ifuicnrflLl
MICROCOMPUTING FOR HOME AND SMALL BUSINESS VOL. 2. ISSUE 3 FEB. 1977 $1.50
Warp Factor
Microcomputer Stock Options
LEGION: Artificial Intelligence
Random Number Generator
8080 Memory Object Code
Search Routine
Basic Algorithms For
Math Functions
WHY SETTLE FOR LESS-
THAN A 6800 SYSTEM
MEMORY-
All static memory with selected 2102 IC's al-
lows processor to run at its maximum
speed at all times. No refresh system is
needed and no time is lost in me-
mory refresh cycles. Each board
holds 4,096 words of this
proven reliable and trouble
free memory. Cost-
only $125.00 for
each full 4K
memory.
INTERFACE—
Serial control interface connects to any RS-232, or
20 Ma. TTY control terminal. Connectors pro
vided for expansion of up to eight interfaces.
Unique programmable interface circuits
allow you to match the interface to al-
most any possible combination of
polaiity and control signal ar-
rangements. Baud rate selec-
tion can be made on each
individual interface. All
this at a sensible cost
of only S35.00 for
either serial, or
parallel type
PROCESSOR-
"Motorola" M6800 processor
with Mikbug® ROM operating
system. Automatic reset and load-
ing, plus full compatability with
Motorola evaluation set software. Crystal
controlled oscillator provides the clock signal
for the processor and is divided clown by the
MC14411 to provide the various Baud rate outputs
for the interface circuits. Full buffering on all data
and address busses insures "glitch" free operation with
full expansion of memory and interfaces.
POWER
SUPPLY-
Heavy duty 10.0 Amp power
supply capable of powering a
fully expanded system of memory
and interface boards. Note 25 Amp
rectifier bridge and 91,000 mfd computer
grade filter capacitor.
DOCUMENTATION-
Probably the most extensive and complete set of data available for any
microprocessor system is supplied with our 6800 computer. This includes
the Motorola programming manual, our own very complete assembly in-
structions, plus a notebook full of information that we have compiled on
the system hardware and programming. This includes diagnostic programs,
sample programs and even a Tic Tac Toe listing.
Mikbug® is a registered trademark of
Motorola Inc.
" mm®©
Computer System
with serial interface and 4,096 words
of memory $395.00
gsfl^ 6SOO
□ Enclosed is $395 for my SwTPC Computer Kit □ Send Data
□ or BAC tt
□ or MC _ Ex Date
ADDRESS
CITY STATE ZIP
Southwest Technical Products Corp., Box 32040, San Antonio, Texas 78284
CIRCLE INQUIRY NO. 29
Meet the most powerful
fxC system available for dedicated work.
Yet it's only $595:
Here's the muscle you've been telling us you wanted:
a powerful Cromemco microcomputer in a style and price
range ideal for your dedicated computer jobs — ideal for
industrial, business, instrumentation and similar applica-
tions.
It's the new Cromemco Z-2 Computer System. Here's
some of what you get in the Z-2 for only $595:
• The industry's fastest /xP board (Cromemco's highly
regarded 4 MHz, 250-nanosecond cycle time board).
• The power and convenience of the well-known Z-80
/xP.
• A power supply you won't believe ( + 8V @ 30A,
+ 18V and —18V @ 15A — ample power for addi-
tional peripherals such as floppy disk drives).
• A full-length shielded motherboard with 21 card slots.
• Power-on-jump circuitry to begin automatic program
execution when power is turned on.
• S-100 bus.
• Standard rack-mount style construction.
• All-metal chassis and dust case.
• 110- or 220-volt operation.
DEDICATED APPLICATIONS
The new Z-2 is specifically designed as a powerful but
economical dedicated computer for systems work. Notice
that the front panel is entirely free of controls or switches
of any kind. That makes the Z-2 vir-
tually tamper-proof. No accidental
program changes or surprise mem-
ory erasures.
FASTEST, MOST
POWERFUL fiC
Cromemco's microcom-
puters are the fastest and
most powerful available.
They use the Z-80 mi-
croprocessor which is
Shown with
optional bench cabinet
*kit price
widely regarded as the standard of the future. So you're
in the technical fore with the Z-2.
BROAD SOFTWARE/PERIPHERALS SUPPORT
Since the Z-2 uses the Z-80, your present 8080 soft-
ware can be used with the Z-2. Also, Cromemco offers
broad software support including a monitor, assembler,
and a BASIC interpreter.
The Z-2 uses the S-100 bus which is supported by the
peripherals of dozens of manufacturers. Naturally, all
Cromemco peripherals such as our 7-channel A/D and
D/A converter, our well-known BYTESAVER with its
built-in PROM programmer, our color graphics interface,
etc., will also plug into the S-100 bus.
LOW, LOW PRICE
You'll be impressed with the Z-2's low price, technical
excellence and quality. So see it right away at your
computer store — or order directly from the factory.
Z-2 COMPUTER SYSTEM KIT (MODEL Z-2K) (includes
4 MHz fiP card, full-length 21 -card-slot motherboard,
power supply, one card socket and card-guide set, and
front panel; for rack mounting) $595.
Z-2 COMPUTER SYSTEM ASSEMBLED (MODEL Z-2W)
(includes the above as well as all 21 sockets and card
guides and a cooling fan; for rack mounting ), . . $995.
EBRUARY 1977
mem
ncorpo r ated
Specialists In compters and peripherals
2432 CHARLESTON RD., MOUNTAIN VIEW, CA 94043
CIRCLE INQUIRY NO. 6
(415) 964-7400 ,cy
INTERFACE
iiuTcnrflLE
MICROCOMPUTING FOR HOME AND SMALL BUSINESS
VOL 2 ISSUE 3 FEBRUARY 1977
Cover Story
This month's cover is
somewhat reminiscent of
those first spectacular
views of Mars as seen by
researchers on earth as
T.V. signals were beamed
back over the many mil-
lions of miles through
space.
In reality it is a setting
for a major announcement
to take place in March.
"Warp Factor" is a light
hearted scenario high-
lighting the features of
the newest microcompu-
ter kit to enter the personal
computing marketplace.
Motorola is introducing
the HEP EDUCATOR II,
a small system designed
for the economically orien-
ted student or computer
hobbyist. The total price
for this nifty little box of
computing tricks— $16995.
You may start looking
for Educator II in your
local Byte Shop computer
store or in many of the
selected HEP distributors.
DEPARTMENTS
Advertising Index 128
Book Review 86
Cover Story 3
FIFO Flea Market 126
From the Fountainhead 10
Hardware Report 68
Interfacial 4
Letters to the Editor 124
Micro-Market 125
New Products 77
Update 6
FEATURES
8080 OCTAL MONITOR PROGRAM 12
A PROGRAM TO CONTROL By Thomas Doyle
YOUR 8080 SYSTEM FROM ASCII
KEYBOARD, TTY OR CRT
LEGION: AN EXPERIMENT IN ARTIFICIAL INTELLIGENCE 21
CAN A COMPUTER BE By MARLIN ELLERS
TRAINED?
MICROCOMPUTER STOCK OPTIONS I
USING YOUR COMPUTER By EDWARD CHRISTIANSON
I FOR FUN AND PROFIT
A WORTHWHILE APPLICATION
THAT CAN PAY
HANDSOMELY
WARP FACTORS 4C
EXCLUSIVE LOOK AT A NEW By TOM MAZUR
I MICROCOMPUTER FROM MOTOROLA INC., PHOENIX, AZ
MOTOROLA
BUILDING A 12-BIT A TO D CONVERTER -
! CONTINUING A SERIES OF By ROGER BROWN
j "HOW TO" BUILDING A/D'S FOR YOUR
COMPUTER
CARD OF THE MONTH— THE TDL ZPU™ I
A CRITICAL LOOK AT By ROGER EDELSON
THE FIRST Z-80 COMPUTER
CARD
COMPUTER COUPLING TO TELETYPE LOOPS (
UPGRADING THE OLDER By B. D. LICHTENWALNER
TELETYPES FOR HOME
COMPUTER USE
THE BLACK BOX I
A SIMPLISTIC By KENNETH PUGH
APPROACH TO UNDERSTANDING
HARDWARE AND SOFTWARE
DECISIONS
SOFTWARE FEATURES
SOFTWARE EDITORIAL <
RANDOM BITS & BYTES By ROBERT STEVENS
NEED A BETTER RANDOM NUMBER GENERATOR? 94
By ROBERT MARTIN
BASIC ALGORITHMS FOR COMMON MATH FUNCTIONS 10
By MICHAEL P. BURTON
LLL 8080 BASIC INTERPRETER— PART III 1Q4
By DAVID MEAD, HAL BRAND AND FRANK OLKEN
AMI'S EVK SERIES MICROCOMPUTER— PART III 110
By ROBERT STEVENS
AN 8080 MEMORY OBJECT CODE SEARCH ROUTINE 121
By T E. TRAVIS
INTERFACE AGE Magazine, published monthly by McPheters, Wolfe & Jones, 13913 Artesia Blvd. Cerritos, Calif. 90701. Subscription rates US $1000
Canada/Mexico $12,00. all other countries $18.00, Opinions expressed in by-lined articles do not necessarily reflect the opinion of this magazine or the
publisher. Mention of products by trade name in editorial material or advertisements contained herein in no way constitutes an endorsement of the product
or products by this magazine or the publisher.
INTERFACE AGE Magazine COPYRIGHT c February 1977 by McPheters, Wolfe & Jones. ALL RIGHTS RESERVED. Material in this publication may not be
reproduced in any form without permission. Requests for permission should he directed to Nancy Jones, Rights and Permissions McPheters Wolfe Si
Jones, 13913 Artesia Blvd., Cerritos, Calif. 90701,
PfJSTMASTEBr Please send change of address form 3579 and undelivered copies to INTERFACE AGE Magazine, 13913 Artesia Blvd., Cerritos, CatiL 90701
Second-Class postage paid at Artesia. California 90 701 and at additional mailing offices.
2 INTERFACE AGE
FEBRUARY 1977
Print \four Heart Out
With help from the Digital Group, naturally.
Now, that small computer system you own or have been
considering for personal or business use suddenly be-
comes a lot more usable — with the addition of a full-si zt-
impact printer from the Digital Group. A printer designed
for small computers that need big output (like yours).
With the Digital Group printer, you can print your heart
out... and it won't cost an arm and a leg. The Digital
Group printer is available for less than $500. That's
right— $500.
There are lots of capabilities and outstanding features of the
Digital Group printer. . .and (as always) the best news is
our price. Kit prices start as low as $495 for the printer and
interface card. It simply can't be beat.
Find out all the facts about the Digital Group printer now.
Just fill in the coupon below or give us a call for the details.
We think you'll find a place for our printer in your system
. ..and in your heart.
Just look at these specifications:
• Fast — 120 characters per second
• 96 characters per line
• 12 characters per inch horizontal
• 6 lines per inch
• Makes up to 4 copies simultaneously
• Character set and pitch variable under software
control — double width characters, etc.
•5x7 character matrix
• Ribbon has built-in re-inkers for a life of
10,000,000 characters
• Paper can be either a standard 8V2-inch roll, fanfold
or cut page
• Interfaces to 8-bit parallel ports
P.O. Box 6528
Denver, Colorado 80206
(303) 777-7133
Quick. I want to print my heart out.
Send me all the details on your full-size impact printer.
Name ^
Address
City /State/Zip
Please print.
FEBRUARY 1977
CIRCLE INQUIRY NO. 7
INTERFACE AGE 3
IFffliERFHGlflli
Departing this month from our
normal immediate plunge into the
goodies contained in this issue, I'm
vectoring to a much requested priority.
Many of you have written asking
"Who are the people whose names
we see listed on the masthead?"
In this issue and for the coming
several issues, we shall introduce
the staff and include some of their
background. It will help you to relate
better to the magazine if you know
who performs the tasks each month
of getting a book together and event-
ually into your hands.
This month the Northwest Regional
Editor and the Assistant Editor share
the spotlight.
Dr. Adam Osborne is author of more
than 50 works on computer techno-
logy and is familiar with a wide variety
of assembly languages used by vir-
tually all products on the market.
Formerly a computer systems en-
gineer and process ^engineer with
Shell Oil Corp., Dr. Osborne now
heads his own firm, Osborne &
Associates, Inc. He is a graduate of
University of Birmingham, England,
(B.Sc), University of Delaware,
(M.Ch.E. and Ph.D.)
Linda Folkard-Stengel has long exper-
ience in technical journalism, public
relations and television journalism.
Quadrilingual, she was formerly with
the Overseas Office of Design News
and with the Mexico City-based offi-
cial organ of the Association of
Mexican Travel Agents, AMAV News.
She served as TV News Film Librar-
ian for Canadian Broadcasting Cor-
poration's English-language anchor
station CBLT, Toronto.
This month's • issue has been
artfully brushed with many valuable
software articles answering the
ever- present moan, "Now what
do I do next with my system."
To help fill your system's
endless appetite Tom Doyle presents
an 8080 Octal Monitor program
Marlin Ellers gives us a fanciful
approach to artificial intelligence in
LEGION, an attempt at machine
learning techniques.
If you want to make it "big" in
the stock market, but have a problem
understanding what you should do
and when, then, my friend, don't
miss reading MICROCOMPUTER
STOCK OPTIONS. This theme puts
your home computer to work profit-
ably.
Everyone has wondered when Moto-
rola would seriously get into hobby
computing. Exclusive! The beginner
now has the HEP EDUCATOR II,
the first step to a bubble-packed
computer kit available at over 1500
electronics stores across the nation.
It is coming in March, but read about
it now in WARP FACTORS by Tom
Mazur.
Continuing with construction pro-
jects, Roger Brown offers another
approach to A/D converters for your
personal computing activities. Card-
of-the-Month features the TDL-ZPUtm
CARD with Roger Edelson casting a
qualitative eye on this popular pro-
duct.
For those who have the older tele-
types, not useful to home computing
applications, rejoice. A possible solu-
tion to a conversion for the rigs is
outlined in COMPUTER COUPLING
TO TELETYPE LOOPS by B.D. Lich-
tenwalner.
Understanding hardware and soft-
ware concepts is outlined in ultra-
simplistic terms by Ken Pugh in
THE BLACK BOX.
Again Bob Stevens has corraled
a herd of useful software items
by many talented contributors in
the avocational and vocational com-
puting fields.
INTERFACE AGE
MAGAZINE
13913 Artesia Boulevard
Cerritos, CA 90701
(213) 926-6629
PUBLISHER &
EDITOR-IN-CHIEF
ROBERT S. JONES
ASSISTANT EDITOR
LINDA FOLKARD-STENGEL
ASSISTANT MANAGER
EVA YAKA
NORTHWESTERN
REGIONAL EDITOR
ADAM OSBORNE PhD
NEW ENGLAND
REGIONAL EDITOR
ROBERT E. TRIPP
EDITORIAL CO-ORDINATOR
WILLIAM SEVEDGE
HARDWARE EDITOR
ROGER EDELSON
SOFTWARE EDITOR
ROBERT STEVENS
ASSOCIATE EDITOR
JANE HILL ALDEN
PRODUCTION LAYOUT
MIKE ANTICH
ART
CHARLYNE LEVANDOWSKI
SUBSCRIPTION CIRCULATION
JO ANN FERGUSON
NATIONAL SALES MANAGER
BRUCE BERKEY
ADVERTISING — Representative
STEVE RICHARDS
ZACH BOVINETTE
RETAIL CIRCULATION
ZACH BOVINETTE
Editorial Correspondence
Direct all correspondence to the
appropriate editor at: INTERFACE
AGE magazine, P.O. Box 1234,
Cerritos, CA 90701. Editorial contri-
butions must be accompanied by
return postage and will be handled
with reasonable care, however,
publisher assumes no responsibility
for return or safety of manuscripts,
art work, or models.
Advertising Inquiries
Direct all advertising inquiries to:
Advertising Department, INTER-
FACE AGE magazine, 61 South
Lake Avenue, P.O. Box 4566,
Pasadena, CA 91106. (213) 795-
7002.
4 INTERFACE AGE
FEBRUARY 1977
POPULARITY EXPLOSION!
JUPITER II A
6800 System
$795
If you thought the quality of a wire-wrapp<
system was beyond your price Take «
look at what we hav~ now!
The Jupiter Ma ana the Jupiter MIA Basic
computer systems. You get the system module
cage with fully assembled backplane, fully
assembled plug-in ferro-resonant power supply,
front panel kit and your choice of 6800 or Z80
CPU module kit. All less than the price of the two
best selling 8080 systems!
Plus you can choose from the fastest growing
selection of memories and peripherals available
from any manufacturer, like our 2KB EPROM/
4KB RAM/serial RS-232 module which can
transform your basic computer system into a real
star.
And remember, all Wave Mate products meet the
highest quality industrial standards, with rugged
construction unmatched by anyone! Join the
popularity explosion and get yours now!
Write or call for more info and your closest Wave
Mate authorized distributor.
You get your choice of microprocessors!
And you get wire-wrapped modules too!
Now you have a low cost way to get started
into personal computing without sacrificing
future growth capability!
Send information on:
NAME.
□ Jupiter HA system
□ Jupiter MIA system
ADDRESS,
CITY
.STATE.
ZIP .
WAVE MATE 1015 West 190th Street, Gardena, California 90248
Dept24
Telephone (213) 329-8941
FEBRUARY 1977
CIRCLE INQUIRY NO. 36
INTERFACE AGE 5
NATIONAL SEMICONDUCTOR
ANNOUNCES MICROPROCESSOR
COURSES
Santa Clara, CA . . . National
Semiconductor Corp. is offering a
series of microprocessor training
courses at its Santa Clara, California,
facility, as well as SC/MP application
courses in various western U.S. cities.
At National Semiconductor's West-
ern Microprocessor Training Center,
1333 Lawrence Expressway, Santa
Clara, CA, courses will be given in
Microprocessor Fundamentals Febru-
ary 21-24, March 21-24, April 18-21,
and June 6-9. Courses in Advanced
Programming are scheduled for Feb-
ruary 7-10 and May 9-12.
Courses on the application of
National's PACE microprocessor will
be offered at the Western Training
Center on February 28 - March 3,
April 25-28, and June 13-16. SC/MP
application courses will be given
March 7-10, March 28-31, May 2-5,
and June 20-23.
In addition, courses on the appli-
cations of SC/MP (Simple, Cost-
Effective Microprocessor) will be
presented in Seattle, Washington,
on February 14-18; in Edmonton,
Canada, on February 21-25; in Denver,
Colorado, i/i^rch 14-18; and in Orange
County, California, April 4-8. Class
hours are 10 a.m. to 5 p.rci.
The five-day courses given in the
field include either a free SC/MP
kit of a free SC/MP keyboard kit in
the total fee of $395. The sessions
discuss the fundamentals and tools
of SC/MP microprocessors in detail
to allow the student to solve any
application problems he may encoun-
ter. They include complete SC/MP lab
stations with one instructor for every
six students for close lab supervision.
In addition, the field courses feature
hands-on time on two 16-bit IMP
microprocessor systems (floppy disc)
for high-speed software development
and PROM programming.
Registration information may be
obtained from local National Semi-
conductor sales offices or from Na-
tional's Western Microprocessor
Training Center in Santa Clara, Calif-
ornia, (408) 247-7924.
AIAA SEMINAR ON PROPOSAL
PREPARATION
A seminar in proposal preparation
is to be held at Gene Autry Hotel,
Palm Springs, California March 3-4,
1977 and at Hyatt/Union Square, San
Francisco June 2-3, 1977. Sponsored
by the American Institute of Aero-
nautics and Astronautics (AIAA), this
two-day seminar deals exclusively
with the methods for winning new
business via the proposal route. The
main themes propose to instruct how
high technology products and ser-
vices are procured by various U.S.
government agencies and how the
customer picks the winners. Present-
ed over seventy times in three years
in public and inhouse versions, the
seminar has been consistently rated
from excellent to outstanding by its
over 3,000 attendees from some 200
companies, 80 government agencies
and 50 universities.
The seminar is in nine parts under
the following headings:
Part 1: The Ideal Proposal Organiza-
tion - Authority and Responsibility;
Part 2: The Important Pre-proposal
Programs; Part 3: Initiation of the
Proposal Effort; Part 4: How, When
and Where to Spend Resources; Part
5: Learning io Communicate in a
Written Proposal; Part 6: the Source
Selection Process; Part 7: Actual
Preparation of the Various Proposal
Sections; Part 8: Post-proposal Acti-
vities and Tricks of the Trade. Regis-
tration information for individuals
and groups may be obtained from
AIAA Seminar, 444 W. Ocean Bl.
P.O. Box 1710, Suite 1403, Long Beach,
CA 90801 -213 437-7465.
NEWCLUB
A new club is being formed for the
exchange of information on use of
Heathkit products by computer hob-
byists. Write: Computer Heathkit
Users' Group, c/o Charles Floto, 267
A Willow St., New Haven, CT 06511.
TRENTON COMPUTER FESTIVAL
The Second Trenton Computer
Festival will be held at Trenton State
College, Route 1, Trenton, N.J. from
April 30, 1977 to May 1, 1977.
Featured are a special conference
sponsored by IEEE on consumer and
hobby applications of microcomput-
ers, exhibits, displays, contests, a huge
flea market for hardware and software
and manufacturers' booths.
General registration is $4.00 with a
special students' rate of $2.00 and
sales $2.00 per spot. For advanced
registration or information call Jaci Di
Paolo at (609)77 1 -2487 or write Tren-
ton Computer Festival, Trenton State
College, Trenton N.J. 08625.
CALENDAR
Feb. 1 El Paso Computer Group
meets at 7:00 p.m. for meetings
place call (915) 544-1542.
Feb. 2 New England Computer
Society, Inc. meets at 7:00 p.m.
MITRE Corp., Cafeteria, Route 62
Bedford, MA. Call Dave Day at
(603) 434-4239 for more infor-
mation.
Feb. 2 Northwest Computer Club
meets at 7:00 p.m., Pacific Science
Center. Seattle, WA. Informal
meetings. Details by calling (206)
524-6359.
Feb. 5 Louisville Area Computer
Club meets at 1 :00 p.m., Speed
Auditorium, University of Louis-
ville. General meetings, Contact
Glen Darwin (502) 456-5589 or
write 3028 Hunsinger Ln., Louis-
ville, KY; 40200.
Feb. 6 Orange County Computer
Club meets at 12:00 noon, Califor-
nia State University Fullerton,
Administration Bldg., Room 321.
For meeting agenda call: Lorin
Mohler at (714) 998-5831.
Feb. 11 Crescent City Computer
Club meets at 8:00 p.m., University
of New Orleans, Lakefront Campus.
For more information contact Bob
Latham (504) 722-6321.
Feb. 1 1 Rochester Area Micro-
computer Society meets at 6:30
p.m., Room 1030, Bldg. 9, Roches-
ter, NY. Mailing address, RAMS,
P.O. Box D, Rochester NY 14609.
6 INTERFACE AGE
FEBRUARY 1977
q & at
NEW Sphere DOS-
When we decided to redesign our already successful Disk Operating System, we asked ourselves how
we would want it done. Based on a year of solid experience building, shipping and supporting a good
DOS, we decided we would want our new DOS to be able to:
• provide a complete Editor usually found only with minis
• offer a full-blown Assembler (not just a small mnemonic set)
• handle variable-length files
• recognize and handle both stream and block-oriented files
• deal with multiple devices of several types f
• operate on both our 300 and 500 systems.
So, we designed the all-new Sphere DOS, and we have a lot of good reasons for calling it a tiger! It is
a truly remarkable DOS . . . worth checking into. Once you do, we think you'll find it easy to make
the decision to
PUT THIS TIGER ON YOUR TEAM!!!
LANGUAGE
STORAGE REQUIREMENT
OPERATING ENVIRONMENT
CONVENIENCE PROGRAMS
PROVIDED
PERIPHERALS SUPPORTED
STRUCTURE
DOS SPECIFICATIONS
Motorola M6800 Assembler
5K Bytes
Sphere 300 and 500 Series Systems
Editor, Debugger, Assembler, Set of File-manipulating Commands {macro-
like operations)
CRT, Keyboard, Floppy Disk Drive, TTY
Uniform, interrupt-driven I/O
Personal and commercial computer
product distributorships available.
For information call 801-292-8466,
CIRCLE INQUIRY NO. 31
SPHERE
CORPORATION
940 North 400 East
North Salt Lake, Utah 84054
(801) 292-8466
NEW: MATRIX PUBLISHERS
MICROCOMPUTER DICTIONARY AND GUIDE
Charles J. Sippl and David A. Kidd
Over 8000 definitions and explanations of terms and concepts relat-
ing to microprocessors, microcontrollers and microcomputers. Spe-
cial sections on programmable calculators; math and statistics
definitions; flow chart symbols and techniques; binary numbers and
other related computer terms. There is also a comprehensive elec-
tronic/computer abbreviations and acronyms section. 704 pages.
PROGRAMMABLE CALCULATORS
Charles J. Sippl
An introductory textbook on calculators that reviews calculator
capabilities, usage and programming from the basics of how to use
keyboards, special function keys and preprogrammed units to ad-
vanced programmable calculator systems for use in engineering,
science and communication. Includes a section on programming
processes and procedures for calculators and a glossary of calcu-
lator terms.
1024 QUESTIONS AND ANSWERS ABOUT HOME COMPUTERS
Richard L. Didday
A book for the person interested in microcomputers who wants to get
an idea of what it can be like before buying the equipment and for the
person with a microcomputer who wants ideas for things to do, help
in reading the literature, help in deciding what ways to go. 144 pages.
I /m
MATRIX PUBLISHERS, INC.
•j1 X Dept. IF, 207 Kenyon Rd. Champaign, IL 61820
X \ / Matr,x books also available in Byte Shops, computer stores, and bookstores.
CIRCLE INQUIRY NO. 11
contact Bob Goolta, INTERFACE,
160 Speen Street, Framingham,
MA 01701
April 19-21 Electro/77 meets at
New York Coliseum and Hotel
Americana, New York, New York.
For more information write Elec-
tor/77, 999 N. Sepulveda Blvd., El
Segundo, CA 90245 or call (800)
421-6816.
May 10-12 Chicagoland Business
Services and Equipment Exposition
meets at Expocenter/Chicago. For
further information contact Carleton
Rogers, Industrial and Scientific
Conference Management Inc., 222
West Adams St., Chicago, IL 60606
or call (312) 263-4866.
June 13-16 NCC, Dallas, TX. For
more information write AFIPS, 210
Summit Ave., Montvale, NJ 07645
or call (201) 391-9810.
Feb. 12 The Permian Basin
Computer Group, Midland Chapter
meets at 4:00 p.m., Midland Col-
lege, Occupational Technology
Bldg., Room 110, General Meet-
ing. Call (915) 697-4697 for de-
tails.
Feb. 12 The Permain Basin Com-
puter Group, Odessa Chapter meets
at 1 :00 p.m. Odessa College Elec-
tronics Technology Bldg., Room
203. Call (915) 332-9151 for more
information.
Feb. 26 So. Cal. SWTPO MP 6800
Users Group meets at 1 0:00 a.m. at
A-VID Electronics, 1655 E. 28th
Street, Long Beach CA 70806.
Feb. 27 Chicago Area Computer
Hobbyists Exchange (CACHE)
meets at 12:00 noon, NIGAS Bldg.,
Schermer Rd., Glenview IL. Sick
Computer Show. Bring in your
problems and help repair them. Call
Bill Precht at (312) 620-1671.
Feb. 28-Mar. 3 IEEE Computer
Society's COMPCON '77 Spring
beginning at 9:00 a.m. on Feb. 28
at the Jack Tar Hotel, San Fran-
cisco. California.
Mar. 2 New England Computer So-
ciety, Inc., meets at 7:00 p.m.
MITRE Corp., Cafeteria, Route 62,
Bedford, MA. General Meetings.
Call Dave Day at (603) 434-4239.
Mar. 7 AMRAD Amateur Radio
Research and Development Corp.
meets at 8:00 p.m. in the Patrick
Henry Library, Vienna, VA 22101.
Call (703) 356-8918 for details.
March 9-1 1 DATACOMM '77 meets
at Sheraton Park Hotel,
Washington, DC. For more infor-
mation contact Shaun Bresnahan,
Director of Marketing, DATACOMM
77, 60 Austin St., Newtonville, MA
02160 or call (617) 964-4550.
Mar. 10 Rochester Area Micro-
computer Society meets at 6:30
p.m. Room 1030, Bldg. 9, Roches-
ter, NY. Mailing address, RAMS,
P.O. Box D, Rochester NY 146.09.
Mar. 22 So. Cal. SWTPO MP 6800
Users Group meets at 10:00 a.m. at
A-VID Electronics, 1655 E. 28th
Street, Long Beach, CA 70806.
Mar. 27 Chicago Area Computer
Hobbyists Exchange (CACHE)
meets at 1 2:00 noon, NIGAS Bldg.,
Schermer Rd., Glenview, IL. Small
Business Opportunities Show. For
further information contact Bill
Precht at (312) 620-1671.
March 28-30 The 5th Annual Data
Communications Conference and
Exposition, INTERFACE 77 meets
at Georgia World Congress Center,
Atlanta, GA. For more information
COMING IN MARCH ISSUE...
New Products Guide
The Computer Even a Baby Can
Use
by Kenneth Perry, Basil Steele
Rocky Ridges and Harry Garland
An informative glance at the
future of microprocessors in
medical applications
Reflections on the Past and
Thoughts About the Future
of Semiconductor Technology
by Dr. C. Lester Hogan
Dr. Hogan has earned the title
"Father of Semi-conductor
Technology." In Reflections this
eminent scientist relates an
engrossing travelogue of the ar-
duous adventures encounter by him
and his colleaguesthroughout the
years of development of the
technology.
The Menace of the Micro World
Another essay and program on
artificial intelligence
The Qube by Roger Garrett
Science-fiction has such a
provocative way of becoming
science-fact
Building a Digital Group System
by Donald 0. Southwick
More valuable information for our
hardware readers
And for our software readers,
programs on
Depreciation Schedule Analysis
Checkbook Balance
Game of Life
— and others
8 INTERFACE AGE
FEBRUARY 1977
The Small Computer
Twenty- five years ago a computer as powerful as the
new Processor Technology Sol-20 priced out at a cool million.
Now for only $995 in kit form or $1495 fully
assembled and tested you can have your own small computer
with perhaps even more power. It comes in a package about the
size of a typewriter. And there's nothing like it on the market
today. Not from IBM, Burroughs, DEC, HP or anybody else!
It fills a new role
If you're an engineer, scientist or businessman, the
Sol-20 can help you solve many or all of your design problems,
help you quantify research, and handle the books too. For not
much more than the price of a good calculator, you can have high
level computer power.
Use it in the office, lab, plant or home
Sol-20 is a smart terminal for distributed processing.
Sol-20 is a stand alone computer for data collection, handling
and analysis. Sol-20 is a text editor. In fact, Sol-20 is the key
element of a full fledged computer system including hardware,
software and peripheral gear. It's a computer system with a
keyboard, extra memory, I/O interfaces, factory backup, service
notes, users group.
It's a computer you can take home after hours to play
or create sophisticated games, do your personal books and taxes,
and a whole host of other tasks.
Those of you who are familiar with small computers
will recognize what an advance the Sol-20 is.
Sol-20 offers all these features as standard:
8080 microprocessor — 1024 character video display
circuitry — control PROM memory — 1024 words of static low-
power RAM — 1024 words of preprogrammed PROM — built-in
cassette interface capable of controlling two recorders at 1200
bits per second — both parallel and serial standardized interface
connectors — a complete power supply including ultra quiet
fan — a beautiful case with solid walnut sides — software which
includes a preprogrammed PROM personality module and a data
cassette with BASIC-5 language plus two sophisticated computer
video games — the ability to work with all S-100 bus products.
Full expansion capability
Tailor the Sol-20 system to your applications with our
complete line of peripheral products. These include the video
monitor, audio cassette and digital tape systems, dual floppy
disc system, expansion memories, and interfaces.
Write for our new 22 page catalog.
Get all the details.
Processor Technology, BoxG, 6200 Hollis St.,
Emeryville, CA 94608. (415) 652-8080.
FEBRUARY 1977
CIRCLE INQUIRY NO. 26
INTERFACE AGE 9
. . . FROM THE
FOUNTAINHEAD
; * 4 By Adam Osborne
■ «
* ■ ♦ ,
INTERFACE AGE I will bring you
recent microprocessor and micro-
computer happenings in the North-
west. I will concentrate on
developments of technical interests
rather than reviewing society meet-
ings. The companies that I will cover
include all of those between San Jose
and San Francisco — an area known
affectionately as Silicon Valley. To me
this is the "fountain head" from which
microprocessors flow, hence the title I
have chosen for my column. Micro-
processor manufacturers within this
small area include Intel, National Semi-
conductor. Fairchild, Intersil, Sig-
netics, Scientific Micro Systems,
Advanced Micro Devices, American
Microsystems, Advanced Memory
Systems, Electronic Arrays, Zilog and
Synertek. Microcomputer manu-
facturers include IMSAI, Processor
Technology, Cromemco, and Apple -
and the Byte shops began here. These
are the types of companies whose ac-
tivities I will cover.
If you have information about your
company about which you would like
me to write, or if you have comments
about what I have written, please call
me directly at (415) 548-2805.
And now for some recent
happenings of interest.
Guess who will sell the most 8-bit
microprocessors in 1977? Intel with
the 8080? Wrong! Fairchild with the
F8 will outsell the 8080 at least 2-to-1
— providing Fairchild can manu-
facture enough product to fill orders.
Yes, Fairchild is currently production
bound. Fairchild has orders for
between two million and three million
F8 microprocessors in 1977.
But that is not very interesting to the
low volume user because Fairchild's
customer base consists of a few. very
high volume accounts. Low volume
and individual users don't take too
readily to the F8.
Zilog is doing deceptively well. They
are currently shipping approximately
5.000 CPUs a month. That does not
sound like many when stacked up
against 8080 or F8 sales, but numbers
can be misleading. Big sales volume
doesn't come until manufacturers put
the Z80 into something that sells tens
of thousands of units monthly.
Typically it takes two years for a big
user to bring a product with such large
sales volume to the market. All those
guys who will be buying 10,000 Z80
CPUs a month, now are buying 5 or 10
at a time. Zilog's present customer
base suggests that Zilog will be selling
many Z80's in 1 979. Exxon be patient.
Intel's answer to the Z80, the 8085,
is finally here. Is it a mouse or a power-
house? It has the same instruction set
as the 8080A, with just two additional
I/O instructions — but it uses a single
power supply and condenses the
8080A, 8224 and 8228 into a single
chip. But the 8085 address and data
buses are multiplexed. When Intel
went from the 8008 to the 8080 I
thought one of the big advances was to
get rid of multiplex data and address
buses.
The 8048 is Intel's answer to the
F8. It is a single chip microcomputer,
complete with CPU, interrupt logic.
ROM, RAM, and I/O. The 8748 is a
version with erasable ROM and that
should make the chip the darling of all
small manufacturers.
Fairchild cannot make erasable
ROMs so they are coming up with a 40
pin package that combines the new,
one chip 3859 F8 microcomputer with
external erasable ROM. If the price is
right, so is the product.
For all of you 8080A users who are
into hardware, Advanced Micro
Devices is coming out with a book
which you must buy. It is packed with
all kinds of good design tips. Contact
Andrew Allison or Joe Kroeger for
details. And plan on spending some
money; the book costs $10 but it is
worth the price.
Some big names are impressed
enough with the microcomputer hobby
market to jump on the band wagon.
Pertec has bought MITS. the father of
the Altair and the hobby market, and
iCOM who built the first floppy disk
drive to interface with micro-
processors. iCOM uses Pertec floppy
disk drives so Pertec is simply buying
its best customer. But did you know
that when the guys who started iCOM
first went to Pertec to buy drives, they
had to pay cash on the barrel head?
Pertec thought they were too flaky for
credit. Eighteen months later Pertec
bought them for a quarter of a million
Pertec shares. Not bad for 18 months'
work.
But that is not the only Pertec story.
Stu Mabon. Eric Dunstan, et. al started
Pertec in a garage, back in 1 968. Stu
Mabon, Eric Dunstan, et. al. have quit
Pertec and have started another new
company. Wait for those guys to an-
nounce some big floppy disk break-
throughs in the next three months.
Have you heard the rumors about
Heath Kit getting into the micro-
computer hobby market? They are all
true. Starting late this summer the
Heath Company will be marketing a
very well known, big name micro-
computer system at a low. low price.
And won't it be nice to have Heath Kit
quality documentation to workfrom for
a change?
How will all of the other retail out-
lets react to Heath Kit? Those with
multiple lines will make it. Any retail
store that markets just one micro-
computer is severely handicapped in
competition with retail outlets such as
the Byte Shops which carry multiple
lines. After all, what successful stereo
and sound system stores try to sell just
one line? I predict that the stores
marketing just one microcomputer line
will diversify or go under.
u
Let me introduce myself, I am Adam
Osborne. Starting with this issue of
.INTERFACE AGE, ( will be the North-
west regional editor. In every issue pi
10 INTERFACE AGE
FEBRUARY 1977
PRIME RADIX
WE DO IT WITH MIRRORS!
(and some very sophisticated state-of-the-art memory design)
You've probably imagined that someday you'd like to own a
computer system with a full complement of memory:
65,536 BYTES
Your dream can be a reality with the Prime Radix Corporation's
64Ktm memory system at a very cost-effective price. And
because it is a standalone memory system, you've got the
advantage of greater flexibility not ordinarily available from
add-in memory. Some of the features are:
• The 64Ktm is fully buffered, presenting one TTL load to the
memory bus.
• The 64Ktm is digital group bus and ALTAIRtm bus
compatible. When ordering, you must specify the bus
architecture. A plugcard and cable will be furnished for the
particular bus architecture you specify.
• The minimum complement of memory is 40K BYTES, with
starting address locations at OK, 8K, 16K, or 24K.
• The 64Ktm comes assembled and tested with its own power
supply, attractively housed in an aluminumcabinet, ready to
plug into your system.
• Psuedo-static operation: on board refresh clock-generator
provides processor independent refresh with no wait states.
The 300NS worst case access time enhances high speed
operation.
• Power/fail detection circuitry and battery backup will
provide non-volatile memory (batteries are optional at extra
cost).
LIST PRICE IS AS FOLLOWS:
40K 48K 56K 64K
$1490.00 $1580.00 $1670.00 $1750 00
We are offering a special introductory ten percent discount off
list price on all orders received on or before February 28, 1977.
Delivery will be made in the same sequence as orders are
received. Please allow 3 to 6 weeks for delivery. Mastercharge
and BankAmericard are accepted.
P.O. Box 11245 - Denver CO 80211 (303) 422-7040 or (303) 433-5630
Print Name
□ DIGITAL GROUP BUS
□ ALTAIRtm BUS
□ 64K @ $1750.00
□ 56K @ $1670.00
□ 48K @ $1580.00
□ 40K @ $1490.00
Address
City
State
Zip
□ Check or M.O. enclosed
□ Charge BAC
□ Charge MC
(Please No C.O.D.'s or P.O.'s)
Make checks or money orders payable to:
PRIME RADIX. INC.
P.O. Box 1 1245
Denver. Colorado 8021 1
Credit Card Number
4 Numbers Above Name (MC)Good Thru
Signature
FEBRUARY 1977
CIRCLE INQUIRY NO. 25
INTERFACE AGE 11
8080 OCTAL MONITOR PROGRAM
By Thomas E, Doyle
INTRODUCTION
This monitor program will enable you to control your
8080 system from an ASCII keyboard and a TTY or
CRT readout. All standard front panel control func-
tions (examine, examine next, deposit, load and run)
are provided in octal format. Audio cassette input and
output functions as well as a loader for MITS software
are also included. Once you have this monitor in ROM,
the drudgery of entering and reading data from the
front panel switches and lights is all but eliminated.
PORT ASSIGNMENTS
The monitor is designed to operate in an 8080 sys-
tem with keyboard data input on port 1 and keyboard
data available checked on port 0, LSB (active low).
Data output is also available on port 1 with terminal
ready to receive data checked on port 0, MSB (active
low). The audio cassette interface data are on port 7
with status checked on port 6. These standards cor-
respond with MITS port assignments used for the ACR
and serial I/O boards used in Basic and Package II soft-
ware.
MEMORY REQUIREMENTS
Required are 512 bytes of memory which may be
ROM or RAM. The program may be located anywhere
in memory. A source object listing assembled to start
at 376 000 is included at end of text. The best
configuration is to put the monitor in EROM and lo-
cate it in a high memory location so it may reside con-
currently with programs in the low RAM address. The
program is organized as a series of general purpose
subroutines which may be called from user programs.
MONITOR FUNCTION
The monitor functions are:
EXAMINE (E) User types in octal address of
memory location he wishes to
examine and the computer prints
out the address and data in oc-
tal format. HHH LLL : DDD :
EXAMINE NEXT (SPACE) When in the examine
mode the user may type the
space bar and the computer will
print the address and data for
the next location in memory in
octal format. HHH LLL : DDD :
DEPOSIT (D) After examining a location the
user may deposit new data in
that location by typing the letter
D followed by the new data in
octal format. The computer
checks for proper storage by typ-
ing out the octal equivalent of
the data actually stored at that
address. HHH LLL : DDD : D
XXX XXX
Where XXX is the new octal data the user wishes to
deposit at the address.
Note: You must examine a location before you can
deposit data in that location.
RUN (R) After examining a location the
user may elect to start program
execution at that address by typ-
ing the letter R.
Note: you must examine a location before you can
begin program execution at that location.
LOAD (L) After examining a location the
user may elect to load octal data
in sequential addresses by typ-
ing in L followed by the octal
data. After the third digit in each
octal number the computer will
deposit the data in that address
and check it as in the deposit
mode, increment the address
and automatically accept the
next octal number. This mode is
useful when you have a large
amount of data to enter in
sequential locations.
Note: You must examine the starting address before
you can begin loading.
TAPE OUTPUT Typing an O will select the tape
output mode. The Comput-
er will ask for the starting and
ending addresses for the block of
data you wish to put on cas-
sette tape. After typing in the
start and finish addresses, type
space to begin output. The com-
puter will record two STX char-
acters (002) followed by the
data. When it is finished the ter-
minal will print: indicating it is
through outputting data to the
tape and is ready for a new com-
mand.
TAPE INPUT (I) Typing an I will select the tape
input mode. The computer will
ask for the starting address
where you wish to begin
depositing the data from the cas-
sette tape. Type a space follow-
ing the address. When you are
through entering the tape, type
in a carriage return and the com-
puter will print a : indicating it is
ready for a new command.
Note: the system will not automatically return to com-
mand mode at the end of the tape. You must type car-
riage return.
BOOT STRAP (B) Typing a B will copy a modified
MITS cassette boot strap loader
for 8K Basic down into RAM
starting at location 000 000.
After typing B, type a space and
start your basic tape. No need to
wait the 15 seconds. This fea-
ture will be greatly appreciated
by those who have grown weary
of toggle switching the boot
strap in. Since the boot strap is
copied into RAM you may make
any necessary changes before
starting execution.
Note: Typing a carriage return will return the monitor
12 INTERFACE AGE
FEBRUARY 1977
to the command mode.
SUBROUTINES AVAILABLE FOR USER APPLICATIONS
Several of the subroutines used in the monitor may
be used to handle I/O in user programs. These sub-
routines save all used registers so it is only necessary
to call the subroutines.
PNT: Prints the contents of the accumulator on the
terminal connected to port 1.
INP: Inputs data from the keyboard and returns with
the data in the accumulator. The routine INP
(page 2 000) is not used in the program. It is a
general purpose routine for input from a key-
board and returning with the keyboard data in
the accumulator. It was included as a general
purpose routine for use in other programs.
CRL: Outputs an ASCII carriage return and linefeed.
SPC: Outputs an ASCII space.
POC: Prints the octal equivalent of the accumulator
contents.
IOC: Inputs a 3 digit octal number from the keyboard
and returns with data in accumulator.
TOT: Outputs the contents of the accumulator to the
audio cassette interface.
TIN: Inputs from the audio cassette interface and re-
turns with the data in the accumulator.
PROGRAM EXPANSION
Provision for simple expansion of the program is
provided for by including a group of 3 NO-OPS in two
critical locations. The end of the print (PNT) sub-
routine contains 3 NOP's which may be used for a call
to a special I/O handler program (i.e. ASCII to
BAUDOT converter). The input control (INC) subrout-
ing inputs from the keyboard and runs through a series
of comparisons to determine which command is pres-
ent. If the program reaches the . bottom of the list of
comparisons without finding a match it enters a de-
fault routine which prints a ? indicating that an invalid
command was present. Three NO - OPS are included
just ahead of the default routine to allow calling
another set of comparisons and associated jumps for
additional commands.
This monitor is by no means the ultimate but it does
provide all basic control of the microcomputer and I/O.
The length was arbitrarily limited to 512 bytes so it
could be held on two 1702 type PROMS. Possible
areas for expansion are:
• Tape verify routine, after a block of memory has
been recorded on audio cassette it could be read in
and verified.
• HEX format, basic monitor functions handled in HEX
format.
• Cassette I/O improvements, inclusion of file names
and checksum on input and output routines.
NOTES ON MODIFIED MITS BOOTSTRAP LOADER
This routine copies the modified bootstrap loader,
which is stored in the monitor program starting at
(page 2 016), down to RAM starting at (000 000).
After the routine has been copied down the routine
waits for a key to be pressed on the keyboard. If any
key other than a carriage return is pressed program
execution will begin at the start of the bootstrap (000
024). THe loader that is copied down is for MITS 8K
BASIC version 3.2.
If you wish to load software other than 8K BASIC,
after typing B type a carriage return. You will now be
back in the command mode and you can change what
ever you need to by changing memory location (000
002) to 017 for 4-K Basic and Programming System
II or to 057 for EXTENDED BASIC in the bootstrap.
After making the changes, begin execution at (000
024).
The routine waits for the correct character marking
the beginning of MITS tapes (Memory page 2 Address
044). For most current software this is 256. If you
have an old version change location (000 027) to what
ever character starts your tape. (Some older tapes use
175)
NOTES ON LISTING
The Program is contained on two 256 word pages.
The first page contains the instructions for the com-
mands. The second page contains the general purpose
subroutines. The two pages do not have to be adja-
cent in memory. The listing includes object code for
page 1 with a high address of 376 and page 2 with a
high address of 377. These page references are under-
lined in the listing. Changing these page references in
the jump and call commands will allow the program to
run in any two blocks of memory, location of the stack
The first instruction (376 000) sets the stack
pointer. Location of the stack pointer is dependent
upon user's ram configuration and may be changed
depending on your available memory.
PORT ASSIGNMENTS MAY BE CHANGED BY
CHANGING
FOR KEYBOARD STATUS
FOR KEYBOARD DATA
FOR DISPLAY STATUS
FOR DISPLAY DATA
(PAGE 2 136) FOR ACR BOARD
(PAGE 2
(PAGE 2
(PAGE 2
(PAGE 2
346)
354)
364)
373)
(PAGE 2 116) AND
STATUS
(PAGE 2 125) AND
DATA
(PAGE 2 146) FOR ACR BOARD
PROGRAM EXECUTION BEGINS AT (PAGE 1 000)
COMMAND PROCESSING
MEMORY PAGE
1
000-061 377 037
INC: LXI SP ;
LOAD STACK POINTER
003-315 302 377
STA:CALL CLC ;
PRINT CR/LF AND :
006-315 345 377
CALL RCV ;
INPUT KEYBOARD DATA
011-376 105
CPI "E" :
COMPARE FOR ASCII "E"
013-312 050 376
JZ EXA
JUMP TO EXAMINE ROUTINE IF "E,"
016-376 1 1 1
CPI "I" ;
COMPARE ASCII "I"
020-312 202 376
JZ TIP :
JUMP TO TAPE INPUT IF "I"
023-376 117
CPI "0" ;
COMPARE FOR ASCII "0"
025-312 246 376
JZ TOD ;
JUMP TO TAPE OUTPUT IF "0"
030-376 '102
CPI"B"
COMPARE FOR ASCII "B"
032-312 345 376
JZ BSL
JUMP TO BOOT LOADER IF "B"
035-000
NOP
GROUP OF THREE NO OPS TO
036-000
NOP
ALLOW EXPANSION OF
037-000
NOP
COMMAND TABLE
040-076 077
DEF: MVI A. "?" ;
MOVE ASCII"?" TO A
042-315 362 377
CALL PNT ;
CALL PRINT SUBROUTINE
045-303 003 376
JMP STA
JUMP BACK TO START
EXAMINE
050-315 315 377
EXA: CALL CL> ;PRINT CR/LF AND>
053-315 150 377
CALL LHK ;LOAD H AND L FROM OCTAL INPUT
FROM KEYBOARD
056-315 330 377
PXA:CALL CRL
PRINT CR/LF
061-315 166 377
CALL POH
PRINT OCTAL ADDRESS AND DATA
064-076 072
MVI A. ":"
MOVE ASCII ":" TO A
066-315 362 377
CALL PNT
CALL PRINT SUBROUTINE
071-315 345 377
CALL RCV
INPUT DATA FROM KEYBOARD
074-376 040
CPI " "
COMPARE ASCII "SPACE"
076-312 123 376
JZ EXN
JUMP TO EXAMINE NEXT IF
"SPACE-
101-376 122
CPI "R"
COMPARE ASCII "R"
103-312 127 376
JZ RUN
JUMP TO RUN IF "R"
106-376 104
CPI "D"
COMPARE ASCII "D"
1 10-312 130 376
JZ DEP
JUMP TO DEPOSIT IF "D"
113-376 114
CPI "L"
COMPARE ASCII "L"
115-312 152 376
JZ LDE
JUMP TO LOAD IF "L"
120-303 040 376
JMP DEF
JUMP TO DEFAULT ROUTINE
123- 043
124- 303 056 376
EXAMINE NEXT
EXN: INXH INCREMENT H AND L
JMP PXA ;JUMP TO PRINT OCTAL ADDRESS
AND DATA
FEBRUARY 1977
INTERFACE AGE 13
Boards DO Something
Mir ■ ;
* M t
9- 9 i
i' t r i i
CL2400
Real Time Clock
$98— Kit
$135— Assembled
If your system needs to know what time it is, our CL2400 is
the board for you. The present time in hours, minutes, and
seconds is always available for input, and is continuously
updated by the highly accurate 60 Hz power line frequency.
Need periodic interrupts? The CL.2400 can do that, too, at any
of 6 rates. Reference manual with BASIC and assembly
language software examples included.
m/ O
PC3200
Power Control System
PC3232 $299— Kit
PC3216 $189— Kit
PC3202 $39.50— Kit
$360— Assm.
$240— Assm.
$52— Assm.
If your system needs on/off control of lights, motors,
appliances, etc., our PC3200 System components are for
you. Control boards'allow one I/O port to control 32 (PC3232)
or 16 (PC3216) external Power Control Units, such as the
PC3202 which controls 120 VAC loads to 400 Watts. Optically
isolated, low voltage, current-limited control lines are
standard in this growing product line.
P.O. Box 516
La Canada, CA 91011
(213) 790-7957
"Real World Electronics"
CI CLE INQUIRY NO. 3
Confused About
Printers?
MPI HAS YOU
WER!
TTY REPLACEMENT? THESSP-HD
The SSP'40 contains its own microprocessor for easy connection
to yoLir serial port, '
LOW COST BUSINESS SYSTEM? THEMP-40 *425
The MP- 40 connects to your pa relief port tor ASC1 T data transfer
MINIMUM COST FOR HOBBYIST? . , THE KP-40KIT '170
The KP-40 KIT contains mechanism and minimum electionics for
connection to your parallel port,
All of our 40 series printers use I ho same reliable 5x7 impact dot matrix mechanism with
up to 40 columns per fine on ordinary paper with a print speed of 75 lines/minute.
WASTER CHARGE WELCOME * UTAH RESIDENTS ADD 5^ SALES TAX
■ SEND FOR FREE LITERATURE
mpi
MICROPROCESSOR SYSTEMS AND PERIPHERALS
P.O. BOX 22101 /SALT LAKE CITY/UT. 84122
(8011566 0201
CIRCLE INQUIRY NO. 16
RUN
127-351
RUN:PCHL
.START EXECUTION AT ADDRESS
REFERENCED BY H AND L
124-303 056 376
JMP PXA
. JUMP TO PR/NT OCTAL ADDRESS
AND DATA
RUN
127 351
RUN:PCHL
;START EXECUTION AT ADDRESS
REFERENCED BY H AND L
DEPOSIT
130-315 272 377
DEP:CALL SPC
:CALL PRINT SPACE SUBROUTINE
133-315 054 377
CALL OCI
:CALL OCTAL DATA IN FROM
KEYBOARD
136-167
MOV M,A
:STORE DATA IN MEMORY
137-315 272 377
CALL SPC
;PRINT SPACE
142-176
MOV A.M
:MOVE DATA FROM MEMORY TO A
143-315 231 377
CALL POC
:PRINT OCTAL EQUIVALENT OF
DATA
1 46-043
INX H
INCREMENT H AND L
147-303 056 376
JMP PXA
JUMP TO PRINT OCTAL ADDRESS
AND DATA
LOAD
152-315 330 377
LDE: CALL CRL
:PRINT CARRIAGE RETURN/LINE
FEED
155-315 166 377
CALL POH
;PRINT OCTAL EQUIVALENT OF
ADDRESS AND DATA
160-315 272 377
CALL SPC
;PRINT ASCII "SPACE"
163-315 054 377
CALL OCI
:LOAD OCTAL DATA FROM
KEYBOARD
166-167
MOV M. A
;MOVE DATA TO MEMORY
167-315 272 377
CALL SPC
;PRINT ASCII "SPACE"
172-176
MOV A. M
;MOVE DATA FROM MEMORY
173-315 231 377
CALL POC
:PRINT OCTAL EQUIVALENT OF
DATA
176-043
INX H
INCREMENT H AND L
1 77-303 1 52 376
JMP LDE
;JUMP FOR NEXT BYTE
TAPE
IN
202-315 315 377
TIP: CALL CL>
;PRINT CR/LF AND>
205-315 150 377
CALL LHK
;LOAD H AND L FROM KEYBOARD
210-315 302 377
CALL CLC
;PRINT CR/LF AND:
213-315 345 377
CALL RCV
;WAIT FOR A KEY ON KEYBOARD TO
BE DEPRESSED
216-315 127 377
TSC:CALL TIN
;INPUT DATA FROM ACR BOARD
221-376 002
CPI "2"
;CHECK FOR STX (002)
223-302 216 376
JNZ TSC
JUMP IF DATA IS NOT STX
226-315 127 377
TSD:CALL TIN
;INPUT DATA FROM ACR BOARD
231-376 002
CPI
;CHECK FOR STX (002)
233-302 226 376
JNZ TSD
:JUMP IF DATA IS NOT STX
236-315 127 377
TSN; CALL TIN
;INPUT DATA FROM ACR BOARD
241-167
MOV M. A
;STORE DATA
242-043
INX H. L
INCREMENT H AND L
243-303 236 376
JMP TSN
:JUMP FOR NEXT BYTE
TAPE OUT
246-315 315 377
TOD:CALL CL>
;PRINT CR/LF AND>
251-315 150 377
CALL LHK
;LOAD H AND L FROM KEYBOARD
254-315 272 377
CALL SPC
;PRINT SPACE
257-076 124
MVIA, "T"
;MOVE ASCII T TO ACCUMULATOR
261-315 362 377
CALL PNT
:PRINT T
264-076 117
MVI A. "0"
;MOVE ASCII 0 TO ACCUMULATOR
266-315 362 377
CALL PNT
;PRINT 0
271-315 272 377
CALL SPC
;PRINT A SPACE
274-345
PUSH H
;PUSH H AND L
275-315 150 377
CALL LHK
;LOAD H AND L FROM KEYBOARD
300-124
MOV D. H
;MOVE H TO D
301-135
MOV E. L
:MOVE L TO E
302-341
POP H
;POP H AND L
303-315 330 377
CALL CRL
;PRINT CR/LF
306-076 002
MVI A, "2"
;MOVE STX "002" TO
ACCUMULATOR
310-315113 377
CALL TOT
;RECORD STX ON TAPE
313-076 002
MVI A, "2"
;MOVE STX "002" TO
ACCUMULATOR
315-315 113 377
CALL TOT
;RECORD STX ON TAPE
320-176
TOE:MOV A. M
;MOVE DATA FROM MEMORY TO
ACCUMULATOR
321-315 113 377
CALL TOT
;RECORD DATA ON TAPE
324-174
MOV A, H
;MOVE H TO A
325-272
CMP D
;COMPARE D WITH H
326-302 341 376
JNZ TON
JUMP IF D NOT = H
331-175
M.PV A. L
;MOVE L TO A
332-273
CMP E
:COMPARE E WITH L
333-302 341 376
JNZ TON
JUMP IF E NOT = L
336-303 003 376
JMP STA
JUMP BACK TO MONITOR SINCE
ENTIRE BLOCK HAS BEEN
RECORDED
341 043
TON:INX H
INCREMENT H AND L
342-303 320 376
JMP TOE
JUMP FOR NEXT BYTE
MITS BOOTSTRAP
345-021 000 000
BSL; LXI D. "0, 0"
:LOAD D AND E WITH 000 000
350-041 016 377
LXI H. "377 016
";LOAD H AND L WITH 376 016
353-176
MOV A. M
:MOVE M TO A
354-353
BSN:XCHG
EXCHANGE H AND L WITH D AND E
355-167
MOV M. A
.STORE DATA
356-353
XCHG
EXCHANGE H AND L WITH D AND E
357-175
MOV A. L
;MOVE L TO A
360-376 055
CPI-055"
;CHECK FOR END
362-312 372 376
JZ END
JUMP IF END
365-043
INX H
JNCREMENT H AND L
366-023
INX D
INCREMENT D AND E
*3fi"7 *3m OCO -37C
JMP BSN
JUMP FOR NEXT BYTE
OTn oic Tyic; T7"7
J / ^-o 10 o//
END:CALL RCV
:WAIT FOR KEY ON KEYBOARD TO
BE DEPRESSED
375-303 024 000
JMP "000 024"
JUMP TO 000 024 WHICH IS START
OF BOOTSTRAP LOADER
PROGRAM
000-333 000
rNP: INO
;INPUT KEYBOARD STATUS
002-017
RRC
;ROTATE RIGHT
003-332 000 377
JCINP
JUMP BACK IF NO DATA
AVAILABLE
006-333 001
IN 1
JNPUT KEYBOARD DATA
010-000
NOP
:N0 OPERATION
01 1-000
NOP
;N0 OPERATION
012-000
NOP
:N0 OPERATION
013-303 362 377
JMP PNT
JUMP TO PRINT SUBROUTINE
016-041 256 037
BSP LXI H
;LOAD H AND L WITH (037 256)
021-061 022 000
LXI SP
:LOAD STACK POINTER WITH (000
022)
024-333 006
IN 6
:INPUT ACR STATUS
026-017
RRC
; ROTATE RIGHT
027-330
RC
:RETURN IF CARRY
030 333 007
IN 7
;INPUT ACR DATA
032-275
CMP L
;COMPARE L
033-310
RZ
:RETURN IF ZERO
034-055
OCR L
DECREMENT L
035-167
MOV M. A
:MOVE DATA TO MEMORY
036-300
RNZ
:RETURN IF NOT ZERO
037-351
PCH L
EXCHANGE PC WITH H AND L
040-003
INX B
JNCREMENT B AND C
041-000
NOP
;N0 OPERATION
042-333 007
IN 7
;INPUT ACR DATA
044 376 256
CPI 256
;COMPARE FOR CHARACTER
MARKING 256
046-302 024 000
JNZ (000 024)
JUMP BACK IF DATA IS NOT 256
051-303 000 000
JMP (000 000)
JUMP TO START OF BOOTSTRAP
054-305
OCI: PUSH B
:PUSH B
055-006 000
MVI B
;MOVE 000 TO B
057-315 345 377
CALL RCV
;CALL KEYBOARD DATA INPUT
062-346 003
AM "3"
:AND IMMEDIATE (MASK 2 LSB'S)
14 INTERFACE AGE
FEBRUARY 1977
Now you can buy an
AltairM8800b or an Altair
680b computer right off
the shelf. Altair plug-in
boards, peripherals,
software and manuals
are also available.
Check the list below
for the MITS
dealer in your area.
off the shelf.
RETAIL COMPUTER STORE. INC.
Tim & Susanne Broom
410 NE 72nd St.
SEATTLE, WA 98115
(206) 524-4101
COMPUTER KITS (S. F. area)
Pete Roberts
1044 University Ave.
BERKELEY, CA 94710
(415) 845-5300
THE COMPUTER STORE
(Arrowhead Computer Co.)
Dick Heiser
820 Broadway
SANTA MONICA, CA 90401
(213) 451-0713
GATEWAY ELECTRONICS, INC.
George Mensik OF COLORADO
2839W.44th Ave.
DENVER. CO 80211
(303) 458-5444
COMPUTER SHACK
Pete Conner
3120 San Mateo NE
ALBUQUERQUE, NM 87110
(505)883-8282, 883-8283
GLOBAL ENGINEERING CO.
5416 South Yale
TULSA, OKLA. 74145
(918)452-2567
COMPUTER PRODUCTS UNLIMITED
Harry & Margaret Mohrmann
4216 West 12th
LITTLE ROCK. AR 72204
(501) 666-2839
GATEWAY ELECTRONICS, INC.
Harry & Margaret Mohrmann
Lou Elkins, Stuart Bartfield
8123-25 Page Blvd.
ST. LOUIS, MO 63130
(314) 427-6116
CHICAGO COMPUTER STORE
Lou Van Eperen
517 Talcott Rd.
PARK RIDGE, IL 60068
(312)823-2388
THE COMPUTER ROOM
3938 Beau D'Rue Drive
Eagan. MN 55122
Dale Hagert. Bob Raemer
(612) 452-2567
BYTETRONICS
John & Stan Morrow
Suite 103
1600 Hayes St.
NASHVILLE, TN 37203
(615)329-1979
THE COMPUTER SYSTEMCENTER
Jim Dunion, Rich Stafford,
Steven Mann, Ron Roberts
3330 Piedmont Road
ATLANTA. GA 30305
(404) 231-1691
THE COMPUTER STORE. INC.
Sid Halligan
120 Cambridge St.
BURLINGTON, MA 01803
(617) 272-8770
Jeff Feldman, Service Dept.
THE COMPUTER STORE, INC. (Hartford area)
George & Susan Gilpatnck
63 South Main Street
WINDSOR LOCKS, CT 06096
(203) 627-0188
MICROSYSTEMS (Washington. D.C.)
Gloria & Russell Banks
6605ABacklick Rd.
SPRINGFIELD, VA 22150
(703) 569-1110
THE COMPUTER STORE
Stephen Payne
1114 Charleston National Plaza
CHARLESTON, W. VA. 25301
(304) 343-4607
THE COMPUTER STORE OF NEW YORK
Bob Arning
55 West 39th St.
NEW YORK, NEW YORK 10018
(212) 221-1404
THE COMPUTER STORE OF
Peter Blond ANN ARBOR
310 East Washington Street
ANN ARBOR. Ml 48104
(313) 995-7616
MARSH DATA SYSTEMS
Don Marsh
5405 B Southern Comfort Blvd.
TAMPA. FL 33614
(813) 886-9890
0^ DOQIju^
FEBRUARY 1977
CIRCLE INQUIRY NO. 15
INTERFACE AGE 15
No system is more complete. None is less expen-
sive. OSI system boards and full documentation
start at $29. Fully assembled systems at $439.
And OSI offers more features than ever. Full
multiprocessing capabilities. An innovative full
color graphics and alphanumeric video system.
New options for even greater system expansion.
New software. And two of the best-priced floppy
disk options you'll ever see. Now at your compu-
ter store or write OSI.
□ Send me the free
brochure on OSI kits
and fully assembled
computers.
□ Send me the full
line OSI catalog,
$1.00 is enclosed.
Ohio Scientific Instruments
11 679 Hayden Street Hiram, Ohio 44234 (216) 569-7945
CIRCLE INQUIRY NO. 19
1702A MANUAL EPROM PROGRAMMER
Features hex keypad, two
digit hex address and two
digit hex data display. Con-
trols include load, clear, go!
(step), key/copy, data in/
data out, and counter up/
down. Profile card includes
high voltage pulse regulator,
timing, 8 bit address and 8
bit data drivers/receivers. Two 6V2" x 9" stacked cards with
spacers. Allows programming in 20 minutes — copying in
5 minutes. Requires +5, —9, and +80 volts.
ASSEMBLED $299.95
KIT $189.95
NOW
The best of two worlds . . . use our 1 702 EPROM programmer
as a manual data/address entry programmer ... or connect it
to your processor.
IMSAI/ALTAIR computer interface (requires 3 output ports,
+1 input port) and software $49.95
Briefcase unit with power supplies and interface connectors
(assembled and tested only) $599.95
ANNOUNCING
Our NEW 16K Byte Pseudo-Static, IMSAI/ALTAIR compat-
ible RAM. Single card slot. Uses less power than equivalent
low power RAM. All memory chips socketed. Uses all prime,
factory fresh ICs. High quality, two-sided, through-hole-
plated circuit board. Crystal controlled, totally invisible
refresh system requires NO software management. Just plug
it in and use like STATIC memory.
Complete kit $349.95
Assembled, tested, and burned in $549.95
ASSOCIATED ELECTRONICS
12444 Lambert Circle • Garden Grove, CA 92641
(714) 539-0735
064-037
RAR
;ROTATE RIGHT
065-037
RAR
;THREE TIMES
066-037
RAR
067-200
ADO B
;ADD B
070-107
MOV B.A
;MOVE A TO B
071-315 345 377
CALL RCV
;CALL KEYBOARD DATA INPUT
074-346 007
ANI"7"
;AND IMMEDIATE (MASK 3 LSB'S)
076-007
RLC
;ROTATE LEFT THROUGH
077-007
RLC
:CARRY THREE
100-007
RLC
;TIMES
101-200
ADD B
;ADD B
102-107
MOV B.A
;MOVE A TO B
103-315 345 377
CALL RCV
;CALL KEYBOARD DATA INPUT
106-346 007
ANI "7"
:AND IMMEDIATE (MASK 3 LSB'S)
1 10-200
AOO B
;ADD B
1 11-301
POP B
:POP B AND C REGISTERS
112-311
RET
;UNCONDITIONAL RETURN
113-365
TOT: PUSH PSW
;PUSH ACCUMULATOR
114-067
STC
;SET CARRY
115-333 006
TOI: IN 6
:INPUT ACR BOARD STATUS
1 1 7-007
RLC
jROTATE LEFT THROUGH CARRY
120-332 115 377
JC TOI
:JUMP IF VART BUFFER FULL
123-361
POP PSW
:POP ACCUMULATOR
124-323 007
OUT 7
;OUTPUT DATA TO ACR BOARD
126-311
RET
UNCONDITIONAL RETURN
127-333 001
TIN: IN 1
;INPUT KEYBOARD DATA
131-376 015
CPI "CR"
;COMPARE FOR ASCII CARRIAGE
RETURN
133-312 003 376
JZ STA
JUMP IF ASCII CARRIAGE RETURN
136-067
STC
;SET CARRY BIT
137-333 006
IN 6
;INPUT ACR BOARD STATUS
141-017
RRC
: ROTATE RIGHT THROUGH CARRY
142-332 127 377
JC TIN
JUMP IF NO DATA AVAILABLE
145-333 007
IN 7
;INPUT ACR BOARD DATA
147-311
RET
UNCONDITIONAL RETURN
150-365
LHK:PUSH PSW
;PUSH ACCUMULATOR
151-315 054 377
CALL OCI
;CALL OCTAL IN
154-147
MOV H.A
;MOVE ACCUMULATOR TO H
155-315 272 377
CALL SPC
;PRINT A SPACE
160-315 054 377
CALL OCI
;CALL OCTAL INPUT
163-157
MOV LA
;MOVE ACCUMULATOR TO L
164-361
POP PSW
;POP ACCUMULATOR
165-311
RET
UNCONDITIONAL RETURN
166-365
POHrPUSH PSW
;PUSH ACCUMULATOR
167-315 204 377
CALL POA
;PRINT OCTAL EQUIVALENT OF
ADDRESS
172-076 072
MVIA.
;MOVE ASCII : TO ACCUMULATOR
174-315 362 377
CALL PNT
;PRINT :
177-315 222 377
CALL POD
;PRINT OCTAL EQUIVALENT OF
DATA
202-361
POP PSW
;POP ACCUMULATOR
203-311
RET
UNCONDITIONAL RETURN
204-365
POA;PUSH PSW
;PUSH ACCUMULATOR
205-174
MOV A.H
;MOVE H REGISTER TO
ACCUMULATOR
206-315 231 377
CALL POC
;PRINT OCTAL EQUIVALENT OF H
REGISTER
211-315 272 377
CALL SPC
;PRINT A SPACE
214-175
MOV A. L
;MOVE L REGISTER TO
ACCUMULATOR
215-315 231 377
CALL POC
;PRINT OCTAL EQUIVALENT OF L
REGISTER
220-361
POP PSW
;POP ACCUMULATOR
221-311
RET
UNCONDITIONAL RETURN
222-365
POD:PUSH PSW
;PUSH ACCUMULATOR
223-176
MOV A.M
;MOVE MEMORY DATA TO
ACCUMULATOR
224-315 231 377
CALL POC
;PRINT ACCUMULATOR OCTAL
EQUIVALENT
227-361
POP PSW
;POP ACCUMULATOR
230-311
RET
UNCONDITIONAL RETURN
231-345
POC:PUSH H
;PUSH H AND L REGISTERS
232-157
MOV LA
;MOVE ACCUMULATOR TO L
233-007
RLC
;ROTATE LEFT TWICE
234-007
RLC
235-346 003
ANI "3"
;MASK OFF ALL BUT 3 BITS
237-366 260
ORI 260
:FORM ASCII DIGIT
241-315 362 377
CALL PNT
;PRINT FIRST OCTAL DIGIT
244-175
MOV A.L
;MOVE L TO ACCUMULATOR
245-017
RRC
;ROTATE RIGHT 3 TIMES
246-017
RRC
247-017
RRC
250-346 007
ANI "7"
;MASK OFF ALL BUT 3 BITS
252-366 260
ORI 260
;FORM ASCII DIGIT
254-315 362 377
CALL PNT
;PRINT SECOND OCTAL DIGIT
257-175
MOV A. L
;MOVE L TO ACCUMULATOR
260-346 007
ANI"7"
;MASK OFF ALL BUT 3 BITS
262-366 260
ORI 260
:FORM ASCII DIGIT
264-315 362 377
CALL PNT
:PRINT THIRD OCTAL DIGIT
267-175
MOV A,L
;MOVE L TO ACCUMULATOR
270-341
POP H
;POP H AND L REGISTERS
271-311
RET
UNCONDITIONAL RETURN
272-365
SPC: PUSH PSW
;PUSH ACCUMULATOR
273-076 040
MVI A " "
;MOVE ASCII SPACE TO
ACCUMULATOR
275-315 362 377
CALL PNT
;PRINT SPACE
300-361
POP PSW
;POP PSW
301-311
RET
UNCONDITIONAL RETURN
302-365
CLC: PUSH PSW
;PUSH ACCUMULATOR
303-315 330 377
CALL CRL
;PRINT CARRIAGE RETURN AND
LINE FEED
306-076 072
MVIA. -•"
;MOVE ASCII : TO ACCUMULATOR
310-315 362 377
CALL PNT
;PRINT :
313-361
POP PSW
;POP ACCUMULATOR
314-311
RET
UNCONDITIONAL RETURN
315-365
CL>:PUSH PSW
:PUSH ACCUMULATOR
316-315 330 377
CALL CRL
:PRINT CARRIAGE RETURN AND
LINE FEED
321-076 076
MVIA. •>"
;MOVE ASCII> TO ACCUMULATOR
323-315 362 377
CALL PNT
;PRINT
326-361
POP PSW
:POP ACCUMULATOR
327-311
RET
UNCONDITIONAL RETURN
330-365
CRL: PUSH PSW
;PUSH ACCUMULATOR
331-076 015
MVIA. "CR"
;MOVE ASCII CARRIAGE RETURN
TO ACCUMULATOR
333-315 362 377
CALL PNT
;PRINT CARRIAGE RETURN
336-076 012
MVIA. "LF"
;MOVE ASCII LINE FEED TO ACCUM
340-315 362 377
CALL PNT
;PRINT LINE FEED
343-361
POP PSW
;POP ACCUMULATOR
344-311
RET
UNCONDITIONAL RETURN
345-333 000
RCV:IN 0
;INPUT STATUS CHANNEL
347-017
RRC
;CHECK LSB
350-332 345 377
JC RCV
.JUMP BACK IF NO KEYBOARD
DATA
353-333 001
IN 1
;INPUT KEYBOARD DATA
355-376 015
CPI "CR"
;COMPARE FOR ASCII CARRIAGE
RETURN
357-312 003 376
JZ "STA"
;JUMP TO START IF CARRIAGE
RETURN
362-365
PNT: PUSH PSW
;PUSH ACCUMULATOR
363-333 000
PNA:IN 0
;INPUT STATUS CHANNEL
365-007
RLC
:CHECK MSB
366-332 363 377
JC PNA
:JUMP BACK IF TERMINAL NOT
CIRCLE INQUIRY NO. 2
371- 361
372- 323 001
374- 000
375- 000
376- 000
377- 311
POP PSW
OUT 1
NOP
NOP
NOP
RET
READY
POP ACCUMULATOR
PRINT ACCUMULATOR CONTENTS
;NO-OP'S TO ALLOW CALL TO
SPECIAL I/O HANDLER
;ROUTINE
UNCONDITIONAL RETURN
16 INTERFACE AGE
FEBRUARY 1977
. v." ■■ ■■■
S«1 SUaei Pp-ntur
Runl CR'lF and:
Inisul Daw From
Keyboard
DEPOSIT ROUTINE
From Examine Routine
(376 130)
Print Ascii Space
And input Octal
Data From Keyboard
. To "Examine
(376 050)
— To Tjuo I"|ju; ' ItaiiCmn
(378 2C2I
Slom Dam. Ptmi Ascii
Space and Octal Equivalent
1 Data Aciuailv Stored Aa A Chac*
Kuylseiardi Data^
, To "Tape Output" Routine
To "MITS Bootstrap"
Routine (376 345)
1370 0401
I3T6 H6)
Jump Back to "Examine" Routine
(376 056)
Figure
LOAD ROUTINE
From Examine Routine
Figure 1.
(376 152)
Print CR/LF. Octal
Equivalent of Address
And Data And A Space
Input Octal Dat a
From Keyboard. Store
It And Read It Back As
A Check
EXAMINE ROUTINE
From Command Processing
Increment H and |_
(376 176}
1376 0&Q>
Mat CR'LF Aim >
r
\M*a H ffrtd I Ffam
.1
4 •
r
(376 056)
Print CR/LF And
Octal Equivalent
Of Address And Data
lnUmn CL H .tncl L
1
Ptmv And Irtpai
Dili Fram K*vtH>&rt
To Print Ascii?
(376 040)
"Emmins Uni
(376
Increi and L
1
Begin Program Exe
At Address Referenced
By H and L (376 127)
'KwYtowd DfllO — ► To "Depos.t" Routine
(376 130)
■ To "Load" Routine
(376 152)
Figure 2
NOTE; Typing a carraige return instead of octal data will
cause a return to the command process routine.
TAPE INPUT ROUTINE
Figure
From Command Processing
(376 2021
Fnni CR/LF and
Load H and L Fiom
Ktytmatd
Prim CfiV'LF and
Wait Fur Kwy Qn KeyiWftrd
id B II PJHtftBd
□«1 Tflpu Dai a Fnjm ACR
Gat Tape Data From ACH Beard
Q»I Jape Dfl in FiQrfl ACfi
Buflrd and Snwe It
□76 242)
Ineramanl H and L
NOTE: After the tape has been read in. type a carriage return
to return to the command process routine.
Figure
FEBRUARY 1977
INTERFACE AGE
PRAMMER by Xybek
i mil
?" v i
■ I I I 1 1
I
j *5 ~'
1 ^
* 1702A PROM PROGRAMMER, 1792 bytes of 1702A
EPROM, and 256 bytes of RAM, all on one board.
The programmer is not an I/O device. At the flick
of a switch, one of the 1702A positions becomes a
programming address. With programming enabled,
storing into this address space will program the PROM.
With programming disabled, that address space is just
ordinary read-only memory.
* Because PRAMMER contains its own clock and micro-
program for read-write control, it will, through the
S-100 bus, interface with any CPU.
* The kit comes complete with one 1702A containing
stand-alone software for programming other 1702A's
and a complete source listing of an eleven-function
development system which fits into the 1792 bytes
of PROM space.
COMPLETE KIT: Introductory Price $189
Master Charge and Ban kAmericard accepted.
California residents please add sales tax.
XYBEK • P.O.Box 1631 • Cupertino, CA 950 14
Telephone (408) 296-8188
CIRCLE INQUIRY NO. 37
$459
KIT
ASSEMBLED $529
• USES 4K STATIC RAMS -NO REFRESH
• VERY LOW POWER -LESSTHAN1 AMP
• Z80 FAST -200ns ACCESS TIME
• PROVISION FOR BATTERY BACKUP
• LOW PROFILE SOCKETS FOR ALL CHIPS
• EACH 4K ADDRESSABLE TO ANY 4K SLOT
• HARDWARE/SOFTWARE MEMORY PROTECT
FOR EACH 4K
• SPECIAL PAGING OPTION ALLOWS UP TO
1 MEGABYTE ADDRESSABLE MEMORY
• LOW COST
CONSTRUCTION MANUAL $1 .75
PAGING OPTION $9.00
QUANTITY DISCOUNT 5 BOARDS — 5%
10 OR MORE — 1 0%
DEALER INQUIRIES INVITED
OMNI SYSTEMS INC.
P.O. BOX 7536, UNIV. STATION
PROVO, UTAH 84602
CIRCLE INQUIRY NO. 21
16 K STATIC RAM
For ALTAIR / IMS Al / POLY 88
TAPE OUTPUT ROUTINE
From Command Processing
(376 246)
Print CR/LF and Load
Start Address of Data Block
To Be Put On Tape
Print "Space" To "Space"
And Load Stop Address Of
Data Block To Be Put On
Tape
Prim CR/LF And Record
Two STX (002! Characters
(376 320)
Move Data From Data
Block And Record On Tape
No
To "Command Process" Routine
(376 000)
Figure 6.
MODIFIED MITS BOOTSTRAP
From Comm d Processing
(376 345)
Load D and E with (000 000)
Load H and L with (376 016)
(376 341)
Increment H and L
Move Data From Memory (REF H, L)
Store Data in Memory (REF D. E)
No
Increment
H,
L
> ►
Increment
D.
E
Wait For Key On
Keyboard To Be
Depressed
Jump To Start
Of Bootstrap Loader
(000 024)
Figure 7.
18 INTERFACE AGE
FEBRUARY 1977
DIGITAL DATA RECORDERS
MODEL 3M3 $199.95 2SIO(R) CONTROLLER $190.00
(Price Increases to $220.00
effective 1 April 77)
MODEL 3M3 Featuring the radically new "Uniboard" method of con-
struction for data cartridge drives. The major computer makers are
changing to cartridges at a rapid pace because of the freedom from binding
and greater data reliability. Operates in the phase encoded self-clocking
mode which provides greatly enhanced freedom from speed variation
problems and allows 100% tape interchangeability between units.
Uses the 3M Data Cartridge, model DC 300. This cartridge contains 300
feet of .250 tape in a sealed plastic container. Using four tracks you can
record nearly 2 megabytes of data on a cartridge.
Specifications: Full software control of record, play, fast forward and
rewind. LED indicates inter-record gaps. EOT and BOT are sensed and
automatically shut down recorder. Feedback signals send reset and inter-
record gap signals back to the computer so that software searching for
inter-record gaps at high speed can be accomplished. Can also be operated
manually by means of the switches on top which parallel the software con-
trol signals. $199.95 until April 1, 77. $220.00 after April 1, 77. Includes Phase
Encoder Board (ACI).
For 8080, 8085, and Z-80 users:
Comes complete with software listing for the programs in the 2SIO(R)
ROMs. Can be controlled by any of the commpnly used I/O boards. Send
for complete documentation and interfacing instru 3M3 and 2SIO(R)
($3.00). These programs provide full software control.
2SIO(R) CONTROLLER (Bootstrap Eliminator)
This is a complete 8080, 8085, or Z80 system controller. It provides the ter-
minal I/O (RS232, 20 ma., or TTL) and the data cartridge I/O, plus the motor
controlling parallel I/O latches. One kilobyte of on board ROM provides
turn on and go control of your Altair or Imsai. No more bootstrapping.
Loads and Dumps memory in Hex on the terminal, formats tape cartridge
files, has word processing and paper tape routines. Best of all, it has the
search routines to locate files and records by means of six, five and four
letter strings. Just type in the file name i i the recorder and software do
the rest. Can be used in the BiSync (IBM), BiPhase (Phase Encoded) or NRZ
modes with suitable recorders and interfaces.
$190, wired and tested.
$160, Kit form.
Audio Cassette Interlace (ACI) This is the phase encoding board used in
the 3M3. Additional components on the board enable you to use audio
recorders in the KC standard or the new PE 2400 (2400 baud) systems. Can
also be used for Tarbell if you have an 8251 Intel I/O chip. Required if you
use an audio cassette with the 2SIO(R) above.
$55, wired and tested.
$35, Kit form.
For 6800 Users: Software programs and I/O board for SWTP are under
development. Limited software available now. Ask for 6800 data with $3.00
Documentation package. These programs will provide full software control.
CARTRIDGE AVAILABILITY: Cartridges are made by 3M, ITC, Wabash and
others. They are available at all computer supply houses and most major
computer service centers. We can supply them at normal current list prices.
"COMPUTER AID" and "UNIBOARD" are trademarks of the NATIONAL MULTIPLEX CORPORATION. The 3M Data Cartridges are
covered by 3M Patents and Marks. "UNIBOARD" Patents Pending.
OVERSEAS: EXPORT VERSION — 220 V ■ I Hz. Write Factory or: Megatron, 8011 Putzbrunn, Munchen, Germany; Nippon
Automation 5-16-7 Shiba, Mir ato-Ku, Tokyo; Hobby Data, FACK 20012 Malmo, Sweden; G. Ashbee, 172 Ifield Road,
London SW 10-9 AG.
For U.P.S. delivery, add $3.00. Overseas and air shipments charges collect. N.J. Residents add 5% Sales Tax. WRITE or CALL for further
information. Phone Orders on Master Charge and BankAmericard accepted.
NATIONAL MULTIPLEX CORPORATION
3474 Rand Avenue, South Plainfield N J 07080, Box 288, Phone (201) 561-3600 TWX 710-997-9530
FEBRUARY 1977
CIRCLE INQUIRY NO. 17
INTERFACE AGE 19
W\ A MICROPROCESSOR COURSE
1 FOR ENGINEERS AND PROGRAMMERS \J
FROM OSBORNE & ASSOCIATES. INC.
AUTHORS OF THE "INTRODUCTION TO MICROCOMPUTERS" SERIES OF BOOKS
This course teaches students how to design products around microprocessors.
This is the principal difference between a microcomputer and a minicomputer: a minicomputer is used as a vehicle for the execution of various pro-
grams; a microcomputer is used as a low cost substitute for combinatorial logic.
A microcomputer can be used, like a minicomputer, simply to execute programs; that is how microcomputers are used by computer hobbyists, Now the
microcomputer user is only interested in the programming languages, and the microcomputer is packaged as a minicomputer-like system.
In sharp contrast, a logic designer who is using a microcomputer to replace combinatorial logic must look upon programming and digital logic as two in-
terdependent aspects of microprocessor utilization.
Most microprocessor courses being taught at the present time do not accurately stress the interdependence of hardware and software. The student
can go through an assembly language programming course, and the fact that a microcomputer assembly language has been taught leaves the student
no closer to understanding how the microprocessor should be used. Unless assembly language is taught as an alternative to implementing transfer
functions which could otherwise be implemented using combinatorial logic, students will not understand how to use microprocessors in a digital logic
environment. The purpose of the course being taught by Osborne & Associates is to provide this direct comparison between hardware and program-
ming. Students attending our course are taught how to decide whether hardware or instructions within a microcomputer system should be used in order
to implement each step of any product. Emphasis is placed on giving the student a flexible understanding of whether to keep logic inside or outside the
microcomputer system, how to configure the microcomputer system, and how to write programs that drive the configured microcomputer system.
Heavy emphasis is placed on classroom assignments; students are required to implement the same function using digital packages, instruction se-
quences within a microcomputer system, and combinations of the two.
f TIME
DAY 1
DAY 2
DAY 3
DAY 4
DAY 5 ""^
8:30 - 10:00 a.m.
SESSION 1
Single Signal
Logic
SESSION 4
The Central
Processing Unit
SESSION 7
Assembly Language
Programming
SESSION 9
Subroutines and
Interrupts
SESSION 1 1
Parallel
Interfaces
BREAK
1 10:30 a.m. - 12:00
SESSION 2
Parallel
Data Concepts
SESSION 5
Memory
Organization
SESSION 8
Memory
Addressing Modes
SESSION 10
The 8080A
CPU
SESSION 12
Serial I/O
LUNCH
1:00 - 2:30 p.m.
SESSION 3
The Structure Of
A Microcomputer
SESSION 6
Elementar-y Assembly
Language Programming
HANDOUT 4
HANDOUT 4
(Cont'd)
HANDOUT 5
HANDOUT 5
(Cont'd)
BREAK
3:00 - 4:30 p.m.
HANDOUT 1 /HANDOUT 2
HANDOUT 3
HANDOUT 4 (Cont'd)
HANDOUT 5 (Cont'd)
HANDOUT 5 (Cont'd)
EVENING
HANDOUT 1 /HANDOUT 2
(Cont'd)
HANDOUT 3 (Cont'd)
HANDOUT 4 (Cont'd)
HANDOUT 5 (Cont'd)
HANDOUT 5 (Cont'd)
HANDOUT 6 J
TIME
DAY 6
DAY 7
DAY 8
DAY 9
DAY 10
^8:30 - 10:00 a.m.
SESSION 13
Memor-y Systems
Configurations
SESSION 15
Programming Aspects
Of Interrupts
SESSION 17
The Theoiv Of Direct
Memory Access
COMPLETE
HANDOUTS
An Overview of
Microcomputer
Systems
BREAK
10:30- 12:00
SESSION 14
One-Shots & Interval
Timing: The 8253
Programmable Timer
SESSION 16
Interrupt
Handling
Devices
SESSION 18
The 0257
Direct Memory
Access Controller
COMPLETE
HANDOUTS
An Overview Of
Microcomputer
Systems
(Cont'd)
LUNCH
1:00 - 2:30 p.m.
HANDOUT 6 (Cont'd)
HANDOUTS 7, 8 & 9
SESSION 16
(Cont'd)
COMPLETE
HANDOUTS
COMPLETE
HANDOUTS
An Overview Of
Microcomputer Systems
(Cont'd)
BREAK
3:00 - 4:30 p.m.
COMPLETE
HANDOUTS
COMPLETE
HANDOUTS
COMPLETE
HANDOUTS
COMPLETE
HANDOUTS
An Overview Of
Microcomputer Systems
(Cont'd)
EVENING
COMPLETE
HANDOUTS
COMPLETE
HANDOUTS
COMPLETE
HANDOUTS
COMPLETE
HANDOUTS
J
Course fee: $600 per student at our facilities OSBORNE & ASSOCIATES, INC.
(10 students per class) P.O. Box 2036
$6,000 per class, plus expenses, at your facility. Berkeley, California 94702 • (415) 548-2805
20 INTERFACE AGE
CIRCLE INQUIRY NO. 18
FEBRUARY 1977
LEGION: An Experiment in
Artificial Intelligence
By Marlin Ellers
Most articles about artificial intelligence start out with an introduction to the subject, a definition
of artificial intelligence, and an apology to the many people in the field who disagree with the
definition which the author has just put forth. One of the main reasons for this is that
although most people agree upon the meaning of the word "artificial" very few agree upon the
meaning of "intelligence", particularly when the critter that is claiming to have it is a machine. In an
attempt to avoid quarrelsome definitions and hair-splitting arguments, and also in order to keep this
article from becoming tediously long, your author will simply ignore the question of what artificial
intelligence is for the time being and describe LEGION and allow the reader to come to his own
conclusions and definitions.
THE PROBLEM
We would like to build a program that is capable of
recognizing characters which are drawn as a dot ma-
trix (see Fig. 1). Furthermore we would like the pro-
gram to be able to "learn" what a character is by
showing it several examples of a character and telling
it what kind of character it is.
Figure 1. a 5x6 Dot Matrix Character (a plus sign)
LEGION
LEGION is the name of the program that the author
wrote in a mixture of FORTRAN and Assembly Lan-
guage in a couple of days that was an attempt to solve
the above problem. It was not altogether successful,
but it did have many interesting features and was quite
fun to play with. Since LEGION was written quickly
and sort of kluged together a general description is
given rather than a listing.
The basic design decision was that LEGION would
be made up of a number of small parts, each of which
was capable of deciding what it thought a character
was, and each of which could be punished or re-
warded for coming to a right or wrong decision.
The idea was that the parts that arrived at correct
decisions most often would have a stronger say in the
total decision that LEGION would finally make when
asked about a character and thus with a little practice
LEGION could learn what a character was. At this
point it was decided that the parts would be called
"citizen" and when LEGION was shown a character
each "citizen" would "VOTE" on what kind of char-
acter he thought it was, and LEGION would simply
tally the votes and see who the winner was. In addi-
tion each citizen would have a "bank account" which
was essentially a tally of how often the "citizen" was
right. Each time that a "citizen" guessed correctly a
dollar was credited to his account. If, on the other hand
he was wrong in his guess, he would lose a dollar from
his account. When election time came to the com-
munity LEGION followed the very democratic prin-
ciple of "one dollar," "one vote" thus weighting the
"good" voters more heavily than the "bad" ones.
When LEGION was finally implemented several pre-
viously unspecified parameters of the problem were
chosen in such a way as to simplify the programming
on a 1 6-bit word machine, and to simplify the prob-
lem of inputing characters. (Recall that being a learn-
ing machine requires that a given character may have
to be shown to the program several times before it will
learn it. This does not present any problem to a sys-
tem that has a card reader, but when all that you have
FEBRUARY 1977
INTERFACE AGE 21
is a teletype and each character must be typed and
retyped into the machine there is a definite need to
keep the total input needed to a minimum).
For example, it was decided that a character would
consist of a 5 by 6 diode matrix so that one character
would fit conveniently into two 1 6-bit words (with two
bits to spare). Also it was decided that LEGION would
only be required to decide between four characters; a
plus, a minus, a slash, and a zero.
A "citizen" voted on a particular character in this
manner: a subroutine "VOTE" was called which
treated a citizen (which consisted of a 16-bit number
called his social security number of I.D. number) as a
set of 1 6 switches that told whether to perform or not
to perform certain fixed manipulations of the two
words of character. For example, the first bit of the I.D.
number tells whether or not to rotate the two words of
character by one bit, the second tells whether or not to
"Exclusive Or" the I.D. number in with' the character
etc. These manipulations were chosen at random in an
attempt to insure that different "citizens" would
scramble up the character quite differently. When a
"citizen" was done scrambling the character it simply
threw out all but the last two bits which it took as a
number from one to four and that was that "citizen's"
guess for that character. Note that this method means
that an individual "citizen" is totally incapable of learn-
ing anything, for given the same character over and
over again he will always scramble it the same way
and will thus always make the same guess as to what
it is.
LEGION is an interesting example of a whole that is
equal to more than the sum of its parts, where a so-
ciety of inflexible unlearning individuals can work to-
gether to form a flexible learning body, just like a group
of politicians (or worse yet, just the opposite).
It was decided the LEGION would start out as a
colony of 1000 people each with an initial bank ac-
count of $15.00. Also since any "citizen" had a one
out of four chance of guessing right on any one char-
acter it was decided that everyone would lose $1.00
for a bad guess and gain $3.00 for a correct guess thus
keeping the total worth of the society at a steady level.
Finally, in order to introduce new blood into society, it
was decided that anyone that lost all of his money was
clearly not worthwhile and would be replaced with a
new individual who would start out with a fresh "bank
account" of $15.00. (The inflation introduced by this
arbitrary introduction of new money was simply ig-
nored. After all, normal people are forced to live with it
so why should LEGION have it any better?) It took
about three days to write and debug LEGION and he
was ready for the big test, could he learn ? ? ?
THE TEST
LEGION was first shown the 20 characters shown
in Fig. 2 and asked to sort them into the four pre-
viously described classes. He did not do an overly
impressive job, getting 90% wrong the first time
through. The teacher (the author) decided to see if
LEGION could learn a single character. After showing a
Plus about 10 times LEGION finally decided that the
picture was a Plus instead of a zero. (Yea! a Victory). He
was then shown another Plus. After about 4 showings
LEGION decided that the second character was a Plus
FOR REAL RELIABILITY « o^«,«
Get the first really effective Selectric® conversion kit. Not a mechanical nightmare or a collection of switches and
coils, this unit is designed around specially built solenoids and the latest opto-electronics to achieve a superior
product. This product gives you the usage of the same rugged mechanism that has been the industry standard.
Item Description Price
SK-1 Selectric conversion kit, with all mechanical 118.00
and electronic parts. Needs 1 amp at 12 volts
SK-2 SK-1 with built-in power supply and TTL 168.00
compatibility
SK-3 SK-2 with controller kit giving RS232 serial 389.00
ASCII data at 110 or 300 BPS. A high speed
paper tape interface is included
DK-1 Floppy disk and controller kit, with 350 KB 795.00
drive. For use with SK-3, or any serial
interface, up to 19200 BPS. Contains high
level DOS, with simple commands making
any terminal a smart one or any serial CPU a
Qpy disk system
1 1 * » 1 » 1 1
v
i I
n
Manuals from above kits are offered for the purpose of evaluating the
kits. Refunds for manuals apply on subsequent kit order.
SK-D1 Selectric Conversion Manual
SK-D2 Selectric Programming Manual, with
listings and timing data
DK-D1 Floppy Disk Kit & DOS Manual
6.50
6.50
6.50
All orders acknowledged within 24 hours with firm shipping date. A50%
deposit is required on COD. Send check or MO to:
f\ SWrp& Aesociatfc
Box 26045, Lakewood, Colorado 80226
22 INTERFACE A(Jt
UIKL'Lh IMUUIHY ftilh m
FEBRUARY 1977
m
THE ZEROS
0 0 0 0 0
THE SLASHES
ffl ffi
■ i
3i H
THE PLUSSES
§09
THE MINUSES
Figure 2. The 20 different characters that LEGION
was trained to recognize.
instead of a zero. (Yea! Another Victory). It was then
reshown the first character, he guessed a zero (Tsk tsk
you should remember longer than that). With one
reshowing however LEGION remembered that the first
one was a Plus (Yea! again). After a little drill LEGION
learned the Minus, and in the process forgot the
Pluses. By alternating between the three of them
LEGION eventually learned them all. After several
hours of similar trials, familiar to every teacher LEGION
had made considerable progress from an initial 90%
wrong to 75% right. However in spite of this progress
the teacher was frustrated that it was taking so long to
learn what seemed to be such a simple task. The deci-
sion was that the teacher was simply being too le-
nient, "spare the rod and all that." Too many indi-
viduals that were not really any good were staying
alive. After all, one could stay alive with guessing no
better than random. Well that was quickly cured. With
a fairly simple program change the penalty for failure
to guess correctly was upped to $2.00. The change
that this brought over LEGION was simply amazing.
Suddenly LEGION began to pick things up a little
quicker and in short order was up to a perfect score, all
20 characters correctly identified.
At this point LEGION'S brains were dismantled via a
core dump in order to do some statistical checking and
some curiosity satisfying; such as who had the big-
gest bank account? Was there a "perfect citizen," i.e.
one who just happened to always be right? How many
citizens were mediocre as compared to the rich ones,
i.e. were the rich an elite few who controlled most of
society, or did the masses do most of the decision
making? The surprising thing was that due to a pro-
gramming bug there were citizens who had negative
bank accounts! This was because under the old
punishment system of up $3.00 down $1.00 it was
decided to throw out someone when his bank account
hit zero, so a test for zero was made. However under
the new up $3.00 down $2.00 it was possible to have
one's bank account go from 4- $1 .00 to -$1 .00 in one
jump and thus get around the test for zero. This may
have been partly responsible for the increased learn-
ing ability after the change, after all a citizen that con-
sistently guesses wrong is just as valuable as one that
is consistently right. The original classification as to
"good" and "bad" citizens was wrong and unfair. A
derelict who squanders his money performs valuable
service to his society, and is cherished by the Creator
(the author) as much as the model citizen who frugally
tries to vote correctly in every election! Quite a revela-
tion that may have far reaching consequences when
applied to a society of actual persons. The old order
was overthrown, a new paradigm came into being, a
new method of introducing new blood had to be intro-
duced. Was random death the answer? Is that the
reason that all people must die? As he stood at that
moment LEGION handled everything that had been
thrown at him. Could he handle more? There was
much interest in progressing further to see just what
LEGION'S limits were however at this point the powers
FEBRUARY 1977
INTERFACE AGE 23
Figure 3. Detail Flowchart for LEGION
NEXT
/ PERSON —
*\ 1 + TOTAL
\ POPULATION i
INITIAL
BANKAMT-
15
Dimension:
PERSON (TOTAL POP.). TALLY (NUM. OF CHR)
BANKAMT (TOTAL POP.). CHAR TABLE (NUM. OF CHR)
PERSON (IM
BANKAMTHI)
INITIAL
BANKAMT
Do For I - 1 To
TOTAL POPULATION
i
I
i
I
I
.J
REWARO-3
PUNISHH
If you wish to Kill
Losers Kill — 1
Else set Kill to 0
^ GUESS ^
This subroutine was written in assembly code
1
WORK—
PICTURE
( LEGION .4 ^\
OUTPUT J
WORK~
LOGICAL COMPLIMENT
OF WORK
WORK—
WORK + PICTURE
- PERSON (I)
1
r
l-INDEX
of LARGEST
TALLY VALUE
1
f
/ "LEGION /
/ SAYS THE /
/ CHARACTER IS A" /
/ CHARACTER TABLE (!) /
1
f
CZ)
= 0
GUESS— 1 +
MOD (WORK.
NUMBER OF CHARS.)
^ RETURN ^
DO SOME OTHER
MANIPULATION
TO WORK
An alternate form of output that isn't quite
so slick but lets you see more of what is
going on is to simply output the entire
tally. With a small number of characters
the maximum is easy to spot and you can
see how close the election was.
MOD is a function that gives the
remainder when WORK is divided by
NUMBER OF CHARACTERS (a number
from 0 to N. of C. -1) All 1 to get a
number from 1 to N. of C.
24 INTERFACE AGE
FEBRUARY 1977
Continued
IF LEARN THEN
LEARN— 1
ELSE
LEARN — 0
Picture is a Bit string
Representing the character
Matrix. For LEGION this is
a 32 Bit word.
LEARN
OR TEST
ONLY r
PICTURE
INPUT
r
WHAT IT IS
-INPUT
WHAT KIND
OF CHARACTER
IS THAT ?"
Do for i = 1 to
("legion 3 "\
VOTE El) J
GUESS
PICTURE
PERSON (I)
This function subroutine returns a value GUESS which is the
persons guess as to what the picture is. i.e. GUESS is a
number from 1 to NUMBER OF CHARACTERS to be used
as an index tn the CHARACTER TABLE.
FEBRUARY 1977
INTERFACE AGE 25
Figure 4. Overall Flowchart for LEGION
that be stepped in and asked what was going on and
LEGION just barely jumped out the window in time to
avoid being caught.
It has since that time, been a busy year, with cus-
tomers always wanting a new operating system or
something, and LEGION, good friend and kluge that he
is, has never been resurrected, never been pushed to
his full potential.
Do For I = 1 to
Total Population
CONCLUSIONS
The question still remains, "Is LEGION intelligent?"
He does have several on the tell-tale signs. For one
thing LEGION is flexible enough to learn something
new and to unlearn something that has been pre-
viously taught to him. He also exhibits a feature that is
uncommon in most computer programs and that is
redundancy. It is possible to erase great quantities of
the program (the citizenry) and although he will lose
his memory he is able to relearn everything. This last
feature is reminiscent of the experiments in brain
structure where the portion of the brain that is respon-
sible for a particular action is isolated and removed but
the impairment of function is only temporary, indicat-
ing that the brain has built in a certain redundancy of
function. But is LEGION really intelligent? He can't tie
his shoes, can't write poetry, can't even weave a web
in which to catch flies for dinner and would surely re-
ceive an impossibly low score in the Stanford-Binet
standard I.Q. test. Under those standards LEGION is
not intelligent; but then neither are some of my best
friends. The problem is in the definition of intelligence,
it always has been. One test that has been put forth for
determining if a machine possesses intelligence is that
with the machine in one room and a person in another
with a teletype for communication between them, the
person is unable to tell if he is talking to a machine or
to another person. LEGION would fail this test as
would most readers if the person testing were only
able to speak Mandarin Chinese. For these reasons the
author maintains that until an acceptable definition
comes along the Humpty-Dumpty criterion will be
used and the word means what I want it to mean, no-
thing more and nothing less and under my definition
LEGION is intelligent.
SUGGESTIONS
It is hoped that this article will inspire some readers
to experiment with such learning programs on their
own. If anyone should do so they may wish to try this
test of intelligence which was going to be the next one
for LEGION before he was so rudely interrupted. Does
the learning on one character set enhance the learning
on a slightly larger character set? In particular after
LEGION has been trained to recognize the first twenty
characters is he any more likely to be correct on a set
of ten test characters than he would be if they had
been shown before learning anything? Does he apply
what he has previously learned to a new problem?
Perhaps one of you can answer that.
INTERFACE AGE
FEBRUARY 1977
/
T^ORV FROM THE FVJ^
Z16
Full 16K of memory on one card
available in 4K increments. Buy only
what you need now. Expansion later
is easy with a board you have already
tested.
Utilizes the EMM SEMI 4200 memory
chip which is organized as 4K by 1
bits. Provides maximum access time
of only 200ns, Added to board logic
time, total board access time is below
250ns. No other memory board made
to S100 bus specs can match this.
COMBINING:
• HIGHEST DENSITY
• FASTEST ACCESS
• LOWEST POWER USE
• HIGHEST QUALITY
Each 4K block may be individually
addressed at any 4K page border.
You have the versatility of most 4K
boards in your 16K package. Address
changes are very easily accomplished
by using a simple jumper scheme.
Each 4K block may be individually
protected by a switch.
Power consumption is outstandingly
low! Only 20Sma from the +8v,
105m a from the +16v, and 24ma from
the -16v, for a FULL 1GK. Battery
backup with a simple jack connector.
• GREATEST VERSATILITY
• S100 BUS COMPATIBLE
• LOWEST COST 16K STATIC
MEMORY MODULE AVAIL-
ABLE
Fully solder masked arid silk
screened board, sockets for all IC's.
Complete documentation includes
source code for comprehensive
memory test program and paper tape
of this program.
KIT: 4K - $169; 8K - $295; 12K - $435;
16K - $574; 4K expansion kits - $140.
16K assembled and tested: $644.
Delivery: Off the shelf to SO days.
*OFF THE SHELF
^TECHNICAL
m^DESIGN
IZ^^LABS
0 your memory. Hurry, use coupon below to order. Or call (609) 921-0321
The Design Leader in fi Processing
TECHNICAL DESIGN LABS, INC.
Research Park * Building H
1101 Stale Rd. - Princeton, N.J. 06540
Please send your Z16 MEMORY FROM THE FUTURE,
KIT: H 4K - $169 H 8K - $295
H 16K - $574 jgj 4K Expansion Kit - $140
Name ' Sail ? %M 1 £ MM'ii :-> % Mr* el
City BflgjlflJ State
I en c lose fil C heck SB Mo nev Order - amount of sHHBBfl
K - $435
I enclose Check Money Order -
Charge Card Data t Ban kAm eri care
gtSerid COD I enclose 25% deposit
Money Order imounl oi S $W$S-?k
Ban kAm eri card or ^Master Charge. # |Je
Signature
;e 25% deposit. £| Send your FREE CATALOG.
IllSllBlii
mmmm
zip
TECHNICAL DESIGN LABS inc. ■ Research Park - Bldg. H • 1101 State Road ■ Princeton, N.|. 0854*
FEBRUARY 1977
CIRCLE INQUIRY NO. 32
INTERFACE AGE 27
Solder is for sissies.
Are. you still designing circuits the old fashioned way? Soldering
and unsoldering? Burning up valuable IC's? If so, it's time you made
a switch to solderless breadboarding. E&L Instruments offers a
complete line of breadboarding products from sockets to the most
complete systems for professional use. Here are five ways you can
go solderless . . .
Breadbox III SK-10 Socket
An economical approach to a
arge breadboarding area.
Three SK-10 sockets, four
5-way binding posts, two
BNC connectors, six BP-22
solderless breadboarding
pins. $72.25
Op-Amp Designer #OA-2K
Powerful design tool for linear work and
CMOS digital circuitry. SK-10
socket. Heavy current capac-
ities on all three power
supplies [+/- 15V & +5V
DC]. Sensitive null
detector and a full func-
tion generator with exter-
nal frequency adjustment. All
interconnections are solderless.
$120.00 in kit form.
Op-Amp Designer #OA-3K
SK-10 socket. Plus and
minus variable supplies
(1 to 15V). This
adjustable feature
makes the unit
exceptionally flexible,
allowing it to be more
useful for odd voltage require-
ments. The fixed 5 volt supply
allows interfacing with TTL circuitry.
$102.50 in kit form.
This precision solderless bread-
boarding socket will pay for
itself in one afternoon. Inte-
grated circuits and discrete com-
ponents insert directly, without
adapters. All interconnections are
made with 20 to 26 gage solid
conductor wire. $17.75.
Digi-Designer DD-1K
A must for every student, engineer or
technician doing digital
circuit design. Handles
both IC and discrete
components without
soldering. Connec-
tions to the SK-10
socket are made
using any solid 22 gage
insulated wire. The DD-1K includes a
clock, power supply, logic lights, pulsers, logic
level switches and much more. All circuitry is
now in one circuit board. $77.75 in kit form.
All of these products are now available at your
local computer store. Prices shown are suggested
resale U.S.A.
lEJA E&L INSTRUMENTS, INC.
61 FirstStreet, Derby, Conn. 06418
(203) 735-8774 Telex No. 96 3536
Dealer inquiries
invited.
28 INTERFACE AGE
CIRCLE INQUIRY NO
FEBRUARY 1977
FOREWORD
This stock option program is written in Processor
Tech's 5K BASIC for the 8080 Microcomputer and re-
quires 4.2 K bytes of memory storage space.
INTRODUCTION
If you have an interest in the stock market or in
listed call options, here's a way to use that interest to
help pay for your home-brew system, buy some extra
memory, or answer the inevitable question — "What
are you going to do with your own computer?" The
program described in this article calculates the net
profit and rate of return for a simultaneous purchase of
stock and sale of a call option, known generally as a
hedge and specifically as covered writing.
WHAT IS AN OPTION?
A call option, or call, is the right to buy a number of
shares of an underlying stock at a fixed price, called the
strike or exercise price, until a fixed date, called the ex-
piration date. Until recently, a buyer of calls had to go to
a call broker who would find someone willing to offer
(or write) a call at or near the price desired by the buyer.
This method of buying and writing calls was relatively
slow, and once a call was purchased, resale was dif-
ficult because there was no ready market for them.
In April, 1973, the Chicago Board Options Ex-
change (CBOE) began auction trading of. calls, and a
whole new world of investment strategies began with
it. The CBOE's approach was simple. Each call would
be in units of 100 shares, the strike price would be in
increments of 5, 10, or 20 dollars per share
(depending oh the price of the underlying stock) and
the expiration date would be fixed at one of four
months of the year — January, April, July, and Oc-
tober. However, only three expiration periods would be
traded at any one time. In addition, a liquid after-
market would be maintained through a system of com-
peting market makers. This meant that a call could be
bought and sold minutes, hours, days, or weeks later
depending on the buyer's assessment of market condi-
tions. This idea was so successful that trading in call
options grew from ten underlying stocks on the CBOE
to nearly 200 underlying stocks on the CBOE,
American Stock Exchange (AM EX), the Philadelphia,
Baltimore and Washington (PHLX), the Pacific Coast
Exchange (PCE), and Midwest Stock Exchange (MSE).
HOW OPTIONS WORK
To understand why CBOE type calls are so success-
ful, the motives of buyer and writer alike need to be ex-
amined. First, we need a brief explanation of the in-
teraction of stock and option prices. Using the stock
prices of a hypothetical company, the cost of a call with
a $50 strike price at various stock prices with 6
months to go, 3 months to go, and at expiration is
shown in Table 1 .
FEBRUARY 1977
MICROCOMPUTER
STOCK OPTIONS
TO HEDGE OR NOT TO HEDGE —
THE OPTION IS YOURS
Until recently a buyer of calls had to go to a call
broker. This method was relatively slow and resale
was difficult
By Edward Christianson
Table 1
— Cost of $50 Strike Call Option
o
o
D)
o
O
c
o
s
at
M
"5
M
c
5"
-at
o
o
e
O
«£
UJ
W
«o
n
<
40
$ 50
$ 37
$ 0
45
200
150
0
50
500
350
0
55
800
650
500
60
1.100
1.050
1.000
65
1,500
1.500
1.500
For example, if the stock was at $45 per share, a 6
month call would cost $200. If the stock was at $55
per share, that same call would cost $800.
The cost of a call can be divided into two parts:
1 . Premium which represents the value for the time
left until expiration. It decreases slowly in the
first 5 to 6 months, then decreases much more
rapidly during the last 3 months of life. Fox ex-
ample, using the $50 stock price in Table 1, a
call may be worth $500 with 6 months to go,
$350 with 3 months, and be worthless at
expiration. Figure 1 shows a relationship
between premium and time.
There are other factors which influence
premiums. The options of more volatile stocks,
which move up quickly during rallies, command
higher premiums. The supply and demand for op-
tions on the fioor of the exchange also in-
fluences the premium. Also, a significant dividend
from an "income" stock represents added in-
come to the writer. Call buyers recoghizfe this in-
come, and adjust their bids on calls accordingly.
MONTHS TO EXPIRATION
Figure 1. Premium vs Time
i
ai lite money
Figure 2. $50 Strike Call — Prices vs Stock Price
Several items should be noted here. First, as the
stock price increases, the intrinsic value increases, dollar
for dollar, once the stock price has risen above the
strike price. Secondly, the premium virtually disappears
when the stock price is 25% to 30% above its strike
price. j >
When thg stock price is above the strike price, the
call is said to be "in the money." When the stock price
is below the strike, the call is "out of the money."
When the stock price is equal or nearly equal to the
strike, the call is "at the money."
Using the prices from Table 1 ; we will calculate the
profits, the capital requirements, and the return on in-
vestment for a buyer, a naked writer, and <p covered
writer. A naked writer is one who writes (pffers) the
option, but does not own the underlying stock. A
covered writer owns the stock when the call is
originally written.
tHE OPTION BUYER
In this example, assume the stock is at $50 per
share, and a 6 month $50 call is purchased for $500.
Brokerage fees, dividends, and margin interest costs
are ignored.
2. Intrinsic value is the stock price minus the strike
price and is always positive. The relationship of
intrinsic value in the cost of a call can best be
explained in Figure 2. For example, notice that
when the stock price is $55, the option cost is
$800. The intrinsic value is $500 and the premium
is $300.
s>
«J
1
w
inbe
ot
o
_i
oc
-ac
u
£
2
"5.
p
3
e
«
to
%
w
>
ol
CJ
OC
40
$ 0
$-500
$500
-100
45
0
-500
500
-100
50
0
-500
500
-100
55
500
0
500
0
60
1.000
500
500
100
65
1.500
1.000
500
200
In a sharply rising market, buying calls is an ex-
■■ A**, Table 2 — Profit or Loss
cellent strategy. at Expiration _ Buyer
30 INTERFACE AGE
FEBRUARY 1977
The buyer risks 100% of his capital. In fact, the
stock must rise 10% (from 50 to 55) before he breaks
even. After that, however, the rewards are quite
dramatic. A 20% rise (from 50 to 60) will not only
cover his costs, but will result in a 100% profit. In a
sharply rising market, buying calls is an excellent
strategy.
. . . Not for the beginner in options.
THE NAKED WRITER
In this example, the stock is at $50 per share, and a
$50 strike call is written with $500 in proceeds to the
writer. Again, brokerage, dividends, and margin in-
terest are ignored.
A naked writer is required to put up at least 30% of
the cost of delivering the shares. In addition, when the
stock price is above the strike price, he must put up ad-
ditional capital, dollar for dollar for each share for
which he is naked. For example, when the stock is $5
above the strike, he would be required to put up
another $500 in capital. On the other hand, if the stock
was below the strike price, his capital requirements
would be lowered, again dollar for dollar for each
share. If the stock was $5 below the strike, the capital
required would be lowered by $500. This process is
called marking to the market.
"O
<B
a
CO
U
M
M
'5
c
CJ
ot
*o
O
<s
oc
S£
o
"5
c
u
o
_3
o
"5.
a
to
CB
>
ot
m
U
a>
OC
40
$ 0
$ 500$
500
100
45
0
500
1,000
50
50
0
500
1.500
33
55
500
0
2,000
0
60
1,000
-500
2,500
-20
65
1,500
-1,000
3,000
-33
Table 3 — Profit or Loss
at Expiration — Naked Writer
the stock. If the call is not exercised, the stock may be
sold or another call may be offered against it. For pur-
poses of this example, assume the stock is delivered or
sold.
OPTION STOCK
a
o
IT
o
a*
CO
¥>
CO
3
o-
CP
at
o
_i
3
OC
tock
CD
3
CB
o
alue
o
apita
j=
f
V)
>
OL
>
OL
u
OC
40
$ 0
$500
$4,000
$-1,000
$4,500
-1 1
45
0
500
4,500
-500
4,500
0
50
0
500
5.000
0
4,500
1 1
55
a
500
b
0
4,500
11
60
a
500
b
0
4,500
11
65
a
500
b
0
4.500
1 1
Table 4 — Profit or Loss
at Expiration — Covered Writer
Result a. To the writer, the value of the call if it is
exercised is irrelevant — he has made his $500 profit.
Result b. Since he delivers the stock at $50 per share,
his proceeds will be $5,000, regardless of the current
market price of the stock.
Alternative 2. Close out the position before expiration
by buying back the option and selling the stock.
OPTION STOCK
Price
of Call
CO
I
CO
3
I Requi
s?
o
o
CP
£
o
CD
~*
f
pital
c
3
w
CO
>
OL
"2
>
OL
OL
CB
CD
OC
40
$ 0
$ 500
$4,000
$-1,000
$-500
$4,500
-1 1
45
0
500
4.500
500
0
4,500
0
50
0
500
5,000
0
500
4.500
1 1
55
500
0
5,500
500
500
4,500
11
60
1,000
-500
6,000
1.000
500
4,500
1 1
65
1,500
-1,000
6,500
1.500
500
4,500
1 1
Table 5 — Profit or Loss
from Early Closeout —
Covered Writer
The naked writer has an excellent return in a declin-
ing market. On the other hand, the capital require-
ments increase very rapidly because of the marking to
the market requirements. A sudden, sharp rally could
cause the naked writer to run out of capital. At this
point, the brokerage firm would close out his position,
resulting in a severe loss to the writer.
THE COVERED WRITER
In this example, the writer sets up his position by
simultaneously buying the stock (100 shares at $50
per share) and offering the 6 month option, receiving
$500 as proceeds. In any hedge transaction, the capital
required is offset by the proceeds of the sale. Thus, the
net capital required is $4,500 (5000-500). At or near
expiration, two alternatives are possible.
Alternative 1. Allow the call to be exercised and deliver
The net results are the same but there are reasons
for choosing the second alternative over the first as we
shall see later.
The covered writer limits his profit somewhat, but in
return, he has more protection against loss. Covered
writing strategies work best in flat or rising markets.
LEVERAGE
Leverage is using a small amount of capital to control
a larger amount of capital. For example, a $500 call
controls $5,000 worth of stock, a leverage ratio of 10 to
1 . Though covered writing is the most conservative of
the three methods, through increased leverage, the
return can be substantially increased. The covered
writer uses a margin account which allows him to
borrow capital (current 50%) to set up a position. In
FEBRUARY 1977
INTERFACE AGE 31
return, the brokerage firm charges interest, called
margin interest, on the capital borrowed, usually at not
less than \h% above the prime rate.
THE COVERED WRITER— MARGINED
Next, we shall re-examine the same covered writing
hedge using margin, again excluding brokerage fees,
dividends, and margin interest. The capital required is
50% of the stock purchase minus the proceeds from
the sale of the option. Assume the position is closed
out as in Alternative 2.
Price
of Call
(Loss)
(Loss)
o
Requi
2£
J*
u
o
CO
CO
i
CD
Zl
1
ipital
c
a
o
<7)
>
Q_
CO
>
Q_
a.
CJ
OC
40
$ 0
$ 500
$4,000
$- 1 .000 $
-500
$2,000
-25
45
0
500
4,500
-500
0
2.000
0
50
0
500
5.000
0
500
2,000
25
55
500
0
5,500
500
500
2.000
25
60
1,000
-500
6,000
1.000
500
2,000
25
65
1.500
-1,000
6.500
1.500
500
2.000
25
Table 6 — Profit or Loss
from Early Closeout —
Margined Covered Writer
Note that the return is now 25% instead of 11%.
However, the percentage loss possible is also
increased.
Choose a broker who specializes in options, who
understands hedges ... and recommends suitable
strategies in tune with your money.
BROKERAGE FEES
During the previous examples, we have ignored
brokerage fees, dividends and margin interest. However,
in the real world, they represent 30% or more of the
total profit. Since May, 1975, brokers' fees have been
negotiable, with the better customers getting larger
discounts from the old rate structure. A recent
development is the rise of the "discount" brokerage
firm. Fully regulated, they do not offer market research
nor recommendations, but merely execute your orders
on the stock exchanges at discounts of 30% or more
from the previous rate structure. In addition, many
stocks, some of which have listed call options, are
traded directly between brokerage firms as well as the
floor of the major exchanges. Direct trading in this
manner is known as over the counter (OTC) or the third
market. Commissions are less on the OTC than on the
major exchanges.
The Compucolor 8001
Is Also Available
Through The
Following
Authorized
Distributors
Phoenix Byte Shop West
12654 North 28th Drive
Phoenix, Arizona 85029
Alan P Hald
(602)942-7300
Tem pe Byte Shop East
813N.ScoctsdaIeRd.
Tempe, Arizona 85282
Alan P Hald
(602)894-1129
Amco Electronics
414 South Bascom Ave.
San Jose, Ca. 95128
Daniel Judd
(408)998-2828
Computer Components
5848 Sepulveda Blvd.
VanNuys.Ca.91411
Dick Dickinson
(213) 786-7411
The Computer Store
63 South M#in Street
Windsor Locks, Conn. 06096
George Gilpatrick
(203)627-0188
Sunny Com outer Stores, Inc.
University Shopping, Center
1238A S. Dixie Highway
Coral Gables, Fla. 33146
Bill Miller
(305)661-6042
Microcomputer Systems, Inc.
144 So. Dale Mabry Highway
Tampa, Fla. 33609
Forrest K. Hurst
(813)879-4301
Atlanta Computer Mart
509 1-B Buford Highway
Atlanta, Ga. 30340
Jim Oxford
(404)455-0647
The Computer Mart of New Jersey
501 Route 27
Iselin, N.J. 08830
Larry Stein
(201)283-0600
Bvte Shop
2018 Greene St.
Columbia, S.C 29205
Nick Johnson
(803)771-7824
The Communications Center
7231 Fondren
Houston, Texas 77036
Bill Tatroe
(713)774-9526
The Micro Store
634 S. Central Expressway
Richardson, Texas 75080
David Wilson
(214) 231-1096
Or Contact Us Direct
5965 Peachtree Corners East
Norcross, Georgia 30071
Telephone (404) 449-5961
CIRCLE INQUIRY NO. 10
32 INTERFACE AGE
FEBRUARY 1977
The Compucolor 8001 System,
It's A Stand Alone Micro Computer Tilth
Color Input/Output Capabilities All In One Package.
For Only $2995.
If you're looking for an input device, an output device and a micro
computer all in one package, you've found it. The Compucolor 8001.
It's here now, in color, on sale for only $2995.
We gave it
a memory
of its own.
And Floppy Tape Memory
is just for starters. Look
at these other features.
BASIC Language, 8080 CPU,
8 color CRT Terminal, 8K
RAM Workspace, Selectable
Baud Rate to 9600, Two RS
232 I/O's, Keyboard with 16
Function Keys, Background
Color, Lower Case ASCII
Characters, Roll, Insert/Delete,
48 Line X 80 Characters/Line,
2X Character Height, thorough
operating instructions and a
Graphics Mode with 160 X 192
Elements. And our unique Nine
Sector Convergence System
guarantees you quick set-up,
exceptional stability and out-
standing color registration in three
to five minutes. If you can find a
better buy in a color Intelligent CRT
and Micro Computer system, let us
know. We think we've got the best
of both worlds at the best price
going. And we want to prove it to
you.
Name your game.
After all, you'll have your very
own personal computer right at your
fingertips. For the most simple or
complex tasks. Or just plain fun.
The applications are unlimited.
Color graphics and computations,
check book balancing, educational
instruction, tutoring and a unique
variety of computer games. Like
Star Trek and Hangman and
Pong. You can even sit back and
enjoy a game of chess. Like we
said, the applications are
unlimited.
How about a little
demonstration?
Youll find a list of our
distributors at the bottom of the
page. So drop by and ask for a
demonstration. Get some
answers to your questions.
And if you aren't near one
of our distributors, give us a call.
We've got the answers. The
Compucolor 8001. You won't find a
better buy in a color CRT Terminal
and Micro Computer.
Compucolor Corporation
A subsidiary of
Intelligent Systems Corp. ®
5965 Peachtree Corners East
Norcross, Georgia 30071
Telephone (404) 449-5961
CALIFORNIA
Byte Shop
155 Blossom Hill Rd.
San Jose, Ca. 95123
Larry Grihaiva
(408) 226-8383
Computer Store
1093 Mission St.
San Francisco, Ca. 94103
Al Chern
(415) 431-0640
CALIFORNIA
The Computer Center
8205 Ronson Rd.
San Diego, Ca. 92111
Ron Eate
(714) 292-5302
The Computer Mart
of Los Angeles
625 W. Katella No. 10
Orange, Ca. 92667
George Tate
(714) 633-1222
GEORGIA
The Computer Systems
Center
3330 Piedmont Rd., NE
Atlanta, Ga. 30305
Jim Dunion
(404) 231-1691
ILLINOIS
Itty Bitty Machine
1316 Chicago Ave.
Evanston, 111. 60201
Jim Bannish
(312) 328-6800
INDIANA
Home Computer Shop
10447 Chris Dr.
Indianapolis, Ind. 46229
James B. Baughn
(317) 894-3319
MASSACHUSETTS
The Computer Store
120 Cambridge St.
Burlington, Mass. 01803
Sid Halligan
(617) 272-8770
WASHINGTON
Retail Computer Store
410 N.E. 72nd Street
Seattle, Wash. 98115
Hm Broom
(206) 524-4101
Or Contact Us Direct
5965 Peachtree Comers East
Norcross, Georgia 30071
Telephone (404) 449-5961
THE PROGRAM OUTPUT
The best way to demonstrate the effect of brokerage
fees is to run our margined covered writer example
through the program. The output is divided into four
sections — Heading, Cost, Proceeds, and Return.
The Heading section gives the date of the evalu-
ation, and restates the hedge — number of shares
bought and number of options sold.
The Cost section includes the cost of the shares, the
brokerage fees to buy the shares (labeled IN), to deliver
the shares (labeled OUT), and to sell the option (labeled
OPTION), and the margin interest cost. The Proceeds
section includes the money received from delivering
the shares at the strike price, the money from the sale
of the options, and dividends (if any).
The Return section includes the net profit (total
proceeds minus total cost), the net capital required, the
percent net return, the number of days to expiration,
the annual rate of return and the breakeven point. The
breakeven point is the price of the stock (at expiration)
where no profit will be made. It is computed by sub-
tracting net profit from the original purchase cost.
Figure 3 is sample output of our margined covered
writer using the New York Stock Exchange brokerage
rates, and Figure 4 uses the OTC rates.
READY
RUN
INPUT MM> DD,YY, MARGIN? CI=YES), L0AN RATE (#.##)
? 12, 16, 76, \, 7. 50
0UTPUT T0 BE 32 0R 64 CHARACTERS?
?64
EVALUAT I0N N0, DIVIDEND < $/ SHARE/ iTR)
? 1, . 1 0
N0. SHARES, PRICE/ SHARE, MARKET ( 1 =N YSE, 2 = 0T C)
? 1 00, 50, 1
EXP I RATI0N MONTH, STRIKE, C0ST/0PTI0N
? 6, 50, 500
C0VERED WRITE N0 1 12 16 76
BUY 100 SHARES AT 50
SELL 1 6 50 ' S AT S 500 EACH
C0 ST
Y0UR $ 2500
L0AN S 2500
BR0KER' S
IN 51
0UT 51
0PTI0N 26
MARGIN 80
PR0CEEDS
ST0CK 5000
0PTI0N 500
DIVIDEND 20
T0TALS 5208
M0RE? C1=YES)
? 1
5520
RETURN
S 312 0N
2188 IS
14. 2 %
186 DAYS
= 27. 8 X
ANNUALLY
BRK- EVEN
IS
S 46. 8
Figure 3. Sample Using NYSE Brokerage Rate
EVALUAT I0N N0, DIVIDEND ( S/ SHARE/ Q T R )
?2, . 10
N0. SHARES, PRICE/ SHARE, MARKET C 1 =N YSE, 2 = 0 TO
? 100, 50, 2
EXP I RAT I0N M0NTH, STRIKE, C0ST/0PTI0N
C0VERED WRITE N0 2 12 16 76
BUY 100 SHARES AT 50
SELL 1 6 50 ' S AT S 500 EACH
C0ST
Y0UR S 2500
L0 AN S 2500
BR0KER' S
IN 25
0UT 25
0PTI0N 26
MARGIN 78
PR0CEEDS
ST0CK 5000
0FTI0N 500
DIVIDEND 20
T0TALS 5154
M0RE? (1 = YES)
?0
ST0P IN LINE 145
5520
RETURN
S 366 0N
2134 IS
17.1%
186 DAYS
= 33. 5 %
ANNUALLY
BRK- EVEN
IS
S 46- 3
READY
Figure 4. Sample Using OTC Brokerage Rate
The annual rate of return will be increased if the
months until the premium is gone can be shortened.
COMPOUNDING YOUR PROFITS
Another way to increase leverage is by compounding
your profits. In the case of the covered writer,
compounding is accomplished by taking the profit as
soon as it becomes available and immediately re-
investing it, rather than waiting until expiration. The
effect of compounding can best be demonstrated
through a measure called the annual rate of return
which is calculated as follows:
ANNUAL RATE
OF RETURN
rate of
return %
12 months
months until
premium is gone
In our previous example, the
ANNUAL RATE OF RETURN = 25% x 12/6 = 50%
The annual rate of return will be increased if the
months until the premium is gone can be shortened.
Referring again to Table 1 or Figure 2, notice that the
premium disappears when the stock price rises high
enough. Suppose our margined covered writer notices 3
months later that the stock is now at $65, and the
option cost is $1,500. He can close out his position
now, and pocket the $500 profit. Look what happens
to the annual rate of return.
ANNUAL RATE OF RETURN = 25% X 12/3 =
100%
He is now free to evaluate market conditions and
enter into a new hedge.
In any hedge transaction, the capital required Is
offset by the proceeds of the sale.
RUNNING THE PROGRAM
You will need the latest option quotations. Either
the Wall Street Journal (daily) or Barron' Weekly is a
complete, and reliable source. The program requires
input in the following order:
32B INTERFACE AGE
FEBRUARY 1977
Option
NCR
Jan25
NCR
Jan30
NCR
Jan35.
NCR
AnrK)
NCR
Anr^*i
NCR
Inl'Yl
NCR
inn*;
N Semi
N Semi
1 . . .
N Semi
N Semi
N Semi
N Semi
N Semi
/ViaVZ D ....
N Semi
fWJVoU. . . .
11 «Jd 1 II
iVtayoj. . . .
N Semi
Wavy /40
N Semi
Aua9^
N Semi
Ai in 'if)
Nw Ai r
Jan25
Nw Ai r
Nw Ai r
Ian'*1*
Nw Air
Anr9*»
Nw Ai r
Anrlfi
Nw Air
ADr^S
Nw Air
liil?^
Nw Air
Occi
Drri
rV"ri
/ULavyOTk
Ai in1
Pennz
R&nnz
Jan30
Pennz
Jan35
R&nnz
Apr25
P'efYTft
Pennz
Apr35
Pennz
iiii?^
R&nnz
Jul30
Pepsi
Jan70
Pepsi
Jan80
Pepsi
Jan90
Anr7H
Ptorvci
Anrfld
repsi
AnrQH
Pepsi
li iion
inion
rvJlaf
larvVl
Polar
Jcjn35
Polar
Jan40
Polar
Apr35
Polar
Jul35
Polar
Apr40
ruiai
larviS
Pnl^r
njiai
AnrA^
ruld(
1 1 1 1 ATt
O C A
r\ l m
lanTO
r r a
r\ M
r r a
r\ M
bnY)
R C A
K M
A nrOn
r r a
r\ M
Anr9*»
R C A
r\ L M
ADrV)
R C A
r\ L M
InlTO
R C A
l\ L M
liil?^
rvo y 11 11 1
Feb50
Ray inn
r\ay inn
Ravthn
lUJ J 11 II 1
Mav60
Ravthn
AAav70
Raythn
Aug50
Ravthn
Aug60
Sales Open Net Stock
(100s) Int. High Low Last Chg. Close
4 315 11 10% 11 + 1i/2
290 1398 6V4 47s 6V4 + 1
1073 5905 2 1% 1 13-16+7-16
51
751
14
226
434
2598
88
778
2867 3892
7V4 6 7V4+ 1
3% 2 9-16 3%+7-16
7% 6% 7V4+ 1/4
4V4 3V2 4 + %
5Vb 4 41/4
5872 11712 2Vb 1 9-16 1 11-16-1-16
3182 12388 %
578 8502 3-16
228 4854
3 5094
788 2261
2287 6933
1800 6958
Vb
1-16
6V4
1/2
Ve
1-16
1-16
5%
1/2- 1-16
Va-M6
1-16
1-16
5V2- »/4
3% 2 15-16 3 - Vb
1% 1% 1 7-16- Vb
1457 5188 13-16 9-16 11-16
588 853 7Va 6V4 6%- Ve
1233 1712 4V'2 3% 3%- Va
56 411 5% 5 51/4- Vb
551 3027 1% 1 3-16 1 3-16-3-16
225 2280 5-16 Vb Vb- Vb
33 1 43 6 5% 57/8+ Vb
250 1662 2 11-16 2% 2%-
167 1377 15-16 % 13-16-1-
4 131 6% 6% 6%-
131 606 3V2 3 3 -
1359 2410 71/4 5% 678+
7458 21020 2 7-16 1 9-16 2 1-16+ 1/4
622 2146 7% 6Ve 7 + %
2807 10179 3V4 2 3-16 27/8+7-16
330 437 7V2 6V4 7V4+ V2
1329 2776 3%
57 416 7V2
458 2815 27/8
290 3667 % 3-16 3-16-3-16
37 44 7 % 7i/8 7V2- Vb
158 1.6X5 3%
Ve
-16
1/4
Vb
%
2% 3%+7-16
7 71/4- 1/4
2 Ve 2 7-16-1-16
316 1939 1 3-16
24
56
162
246
237
63
111
34
19
16
82
533
191
548
347
86
267
400
66
110
3-16-3
7V2-
3V4....
1 -
7% +
37/8-
2934 2907
7460 8838
3-16
7i/8
3
7/8
7% 7
4V4 37/8
13% 11Vb 11Vb-
4V4 2V4 2V2-
3-16
13
4V2
1%
5%
2%
7V2
3%
Va
V4
Vb
7/b
- %
5-16
137/8+ 1V4
4%- 1/4
1%
5%- Vi
2%
8% + 1%
4V4+ 1
1*61 23304 2 1-16 Vb 1 7-16+9-16
2442 4858 7Va 5 5%+ 7/8
642 2421 8 6 6% + %
6543 10529 5V4 2% 27/8+9-16
2836 14935 9-16 3-16 7-16 + 5-16
2988 6349 1 15-16 15-16 1%+7-16
5 3% 4 + %
7% 5Va 7Va+ 2
2% 1 2V8+ 1Va
%
UV2
6
2
7V4
2%
10%
57/8
1720 3445
386 290
3547 7624
1375 12628
103 193
1803 5112
V4
7%
1-16
5%
3-16 + 1-16
7V4+ 17/8
623 2322
3Vb 1 13-16 27/8+1V8
1714 7316 15-16 7-16 13-16+5-16
108 257 7V2 5% 7V4+ 1%
3% 2 5-16 3V2+ 1'/b
12 11% 117/8+ 2%
41/4 3V^ 3V4+ %
5-16 1/4 5-16 + 1-16
5% 5 5Vb+ 1,
1'/2 1 1-16 1V4+ VB
12V2 I2V2 12i/2
6% 6V2 6^4+ 1'/2
8
116
6
23
81
4.
5
67
802
672
205
336
47
36V4
36i/4
36V4
36V4
36V4
36V4
36V4
277/8
277/8
277/8
277/8
277/8
277/8
277/8
277/8
277/8
277/8
277/8
277/8
29%
29%
29%
29%
29%
29%
29%
29%
217/8
217/8
21 7/b
217/8
217/8
217/8
321/a
32'/8
32V8
32'/fc
32V8
SV/B
32i/8
321/b
80%
80%
80%
80%
80%
80%
80%
80%
387/a
387/8
387/8
387/8
387/8
387/8
387/8
387/b
387/b
26%
26%
26%
26%
26%
26%
26%
26%
61 Ve
611/8
61i/b
611/8
61 Vb
61 '/8
61 »/8
Example. Excerpt from Barron's Option Quotation
RUN
INPUT MM*DD*YY* MARGIN? Cl=YES)* L0AN RATE
? 12* 10* 76* 1*7. 5
0UTPUT T0 BE 32 0R 64 CHARACTERS?
?64
EVALUAT 10N N0* DIVIDEND <$/ SHARE/ QTR)
FEBRUARY 1977
? 101* . 08
N0. SHARES* PRI CE/ SHARE* MARKET ( 1=NYSE* 2 = 0 TC )
? 200* 38. 87* 2
EXP 1 RAT 10N M0MTH* STRIKE* C0ST/0PT10M
?4* 35, 562
C0VERED WRITE N0 101 12 10 76
BUY 200 SHARES AT 38. 87
SELL 2 4 35 1 S AT £ 562 EACH
C0ST
Y0UR S> 3887
L0AN S 3887
BR0KER' S
IN 4 2
0UT 42
0PTI0N 36
MARGIN 77
PR0CEEDS
ST0CK 7000
0PTI0N 1124
DIVIDEND 16
T0TALS 7971
M0RE? C1=YES)
? 1
8140
RETURN
S 169 0N
2944 IS
5.7 X
131 DAYS
= 15. 8 X
ANNUALLY
BRK-EVEN
IS
S 38
Example 1. Using Polaroid April 35's
EVALUATI0N N0* DIVIDEND ( S/ SHARE/ QTR)
? 1 02* . 08
N0. SHARES* PRICE/ SHARE* MARKET < 1=NYSE* 2 = 0TC)
?200*38.87*2
EXP I RATI0N M0NTH* STRIKE* C0ST/0PTI0N
?4* 40* 287
C0VERED WRITE N0 102 12 10 76
BUY 200 SHARES AT 38. 87
SELL 2 4 40 ' S AT S 287 EACH
C0ST
Y0UR S 3887
L0AN S 3887
BR0KER* S
IN 42
0UT 42
0PTI0N 32
MARGIN 9 1
PR0 CEEDS
ST0CK 8000
0PTI0N 574
DIVIDEND 16
T0TALS 7981
M0RE? C1 = YES)
? 1
8590
RETURN
$ 609 0N
3504 IS
1 7. 3 X
131 DAYS
- 4 8. 2 X
ANNUALLY
BRK-EVEN
IS
$ 35. 8
Example 2. Using Polaroid April 40's
EVALUAT I0N N0* DIVIDEND ( S/ SHARE/ CTR)
? 103* . 08
N0. SHARES* PR ICE/ SHARE* MARKET ( 1=NYSE* 2 = 0TC)
?200* 36. 67*2
EXP I RAT I0N M0NTH* STRIKE* C0ST/0PTI0N
f Ai 45* 1ST
C0VERED VRITE N0 103 12 10 76
BUY 200 SHARES AT 38. 87
SELL 2 4 4 5 ' S AT S 137 EACH
C0ST
Y0UR S 3887
L0AN S 3887
BR0KER ' S
IN 42
BUT 42
0PTI0N 29
MARGIN 99
PR0 CEEDS
ST0CK 9000
0PTI0N 274
DIVIDEND 16
T0TALS 7986
M0RE? <1*YES>
? 1
9290
RETURN
S 1304 0N
3809 IS
34. 2 X
131 DAYS
» 95. 2 X
ANNUALLY
BRK-EVLN
IS
S 32. 3
Example 3. Using Polaroid April 45's
INTERFACE AGE 33
INPUT
SOURCE
This is the month, day, and year of
the quotations.
If the stock is bought on margin, enter
a 1, otherwise enter any number.
This is the margin interest rate,
expressed as a percentage. It is
usually !/2% above the prime lending
rate. Ask your broker or use 7.50 as
a good approximation.
The output is 16 lines high, and can
be either 32 or 64 characters wide.
Your choice. If the program could
handle strings, it would be the stock
name.
This information is available from
many sources, including Barron's. It
can be zero.
The number of shares purchased. It
must be in multiples of 100 shares.
Fractional prices must be converted
to decimal prices, for example 371/4
is 37.25. This information will be the
last item in each line of the option
quotations.
Ask your broker if the stock can be
purchased in the 3rd (OTC) market.
This is the number of the expiration
month, 1 =January, 4= April, etc.
The program assumes all options ex-
pire on the 20th day.
On your option quotations, this is the
number next to the month. For ex-
ample, a "Jan35" is an option which
expires in January and has a strike of
$35/share.
Option prices are given on a per
share basis. To compute the total
cost per option, multiply the price by
100. For example, 2% is $237.50
per option. Use the last or closing
prices as input.
RUN
INPUT MM*DD*YY* MARGIN? (l=YES>* L0AN RATE (#.##)
MM.DD.YY
MARGIN? (1 =YES)
LOAN RATE (#.##)
OUTPUT TO BE 32 OR
64 CHARACTERS
EVALUATION NO.
DIVIDEND
($/SHARE/QTR.)
NO. SHARES
PRICE/SHARE
MARKET
(1 =NYSE,2 = 0TC)
EXPIRATION MONTH
STRIKE
COST/OPTION
EVALUAT I0N N0* DIVIDEND ( S/ SHARE/ OTR)
? 105,. 08
N0. SHARES* PRICE/ SHARE, MARKET ( 1=NYSE* 2=0TC)
7200* 38. 87, 2
EXP I RAT I0N M0NTH, STRIKE, C0ST/0PTI0N
7 1, AO, 144
C0VERED WRITE N0 105 12 10 76
BUY 200 SHARES AT 38.87
SELL 2 1 40 'S AT S 144 EACH
C0ST PR0CEEDS RETURN
Y0UR S 3887 ST0CK 8000 S 369 0N
L0AN S 3887 0PTI0N 288 3744 IS
BR0KER' S DI VI DEN DO 9.8 X
IN 42 41 DAYS
0UT 42 = 87. 2 X
0PTI0N 30 ANNUALLY
MARGIN 31 BRK-EVEN
IS
T0TALS 7919 8288 5 37
M0RE? (1=YES)
?0
ST0P IN LINE 145
Example 5. Using Polaroid January 40's
The editing of data is extensive. Any item which is
used in the computation is checked for reasonable-
ness. If multiple errors exist in an input line, each one is
described briefly along with the erroneous value before
the datum is to be reinput.
By studying the examples given with the actual
data, it will be apparent that there is a considerable
difference between the rate of return for various strike
prices, even with the same expiration date. This
difference depends on whether the option is in, at, or
out of the money. The option you choose depends
upon your investment goals, your assessment of the
market in general, and your stock during the life of the
option. Figure 5 below illustrates this relationship.
7 1 2, 10* 76* 1* 7. 5
0UTPUT T0 BE 32 0 R 64 CHARACTERS?
?32
EVALUAT I0N N0* DIVIDEND C $/ SHARE/ QTR>
7 104* • 08
N0. SHAPES* PRI CE/ SHARE* MARKET < 1=NYSE*2=0TC>
?200* 35*0
??0
EXCHANGE IS 1 0 R 2 0
N0. SHARES* PRICE/ SHARE* MARKET ( I *N YSE* 2=0 TO
7200* 38.87*2
EXP IRAT I0N M0NTH* STRIKE* C0ST/0PT I0N
71* 35*425
C0VERED WRITE N0 104 12 10 76
BUY 200 SHARES AT 38.87
SELL 2 1 35 ' S AT $ 425 EACH
C0ST PR0CEEDS RETURN
Y0UR $ 3887 ST0CK 7000 $-68 0N
L0AN $ 3887 0PTI0N 850 3181 IS
BR0KER* S DIVIDENDO -2.1 Z
IN 42
0UT 42
0PTI0N 34
MARG IN 26
T0TALS 7918
M0RE? (1=YES>
7 1
4 1 DAYS
= -18.6 X
ANN UALLY
BRK-EVEN
IS
7850 $ 39.2
Example 4. Using Polaroid January 35's
34 INTERFACE AGE
Figure 5. Market Trend vs Risk
FEBRUARY 1977
When available a deep "in the money" ra//would be
two or more strikes below the "at the money" call. A
deep "out of the money" call would be two or more
strikes above the "at the money" call.
GETTING STARTED
If you are ready for option writing, I recommend that
you do some further reading. Three excellent books
available on option strategies are listed at the end of
this article. They also include sections on income tax
requirements, a subject certainly worth studying.
Choose a broker who specializes in options, who
understands hedges, order placement, floor execution,
and most importantly, your investment goals and will
recommend suitable strategies in tune with these
goals. Don't settle for less, remember it's your money!
A special thanks to Ward Christenson for the use of
his ALTAIR 8800 system and assistance during one
marathon session of inputting, debugging and testing.
PROGRAM SPECIFICATIONS AND REMARKS
The program is written in Processor Tech 5K Basic.
Because of extensive comments and editing, its size is
about 4.2K. Eliminating the comments and making the
edit error descriptions more cryptic could reduce it to
about 3K.
SUGGESTED READING
The New Options Market by Max G. Ansbacher (Walker
& Co.). A good book for the beginning student of op-
tions. He covers strategies for buying options, naked
writing, covered writing as well as more advanced
strategies using options.
2. The Stock Options Manual by Gary L. Gastineau
(McGraw-Hill). Another good book for the
student of options. He introduces some proba-
bility theory into evaluation of options as well as
graphically displaying various hedging strategies.
3. How the Experts Beat the Market by Thomas Nod-
dings (Dow Jones-Irwin). Not for the beginner in
options. He presents numerous hedging strategies
using convertible bonds, warrants, and options.
DISCLAIMER (MY HEDGE)
The charts, tables, and examples presented in this
article are for illustration only, and should not be con-
strued as recommendations for purchase and/or sale of
any individual stocks or related options. Further, it is
not intended to indicate nor imply in any manner that
the methods described in this article can guarantee
profitable results in the future.
EXPLANATION OF PROGRAM
The program is highly modularized in design, that is,
each function is processed by a separate, independent
group of statements. By using this method, the basic
program can be set up and expanded a piece at a time.
Conversely, whole modules could be "lifted" and used
without modification.
the VECCCR 1-
Reset and Go
PROM/RAM
BOARD
from
PROM: Space for 2K bytes, 1702A. Store
bootstrap loaders and monitors.
RAM: 1K bytes, 2102LIPC, 450 ns, low
power. NO NEED TO RELOCATE STACK
WHEN ADDING MEMORY.
CIRCUITRY: Replaces memory write logic
on ALTAIR™ and Imsai front panels.
REGULATORS: Two regulators. No need for
regulated power supply.
JUMP-ON-RESET: PROM program execu-
tion starts at any location in memory without
interfering with programs in any other por-
tion of memory.
S-100 BUS; +8 and -16 VDC; P/C BOARD
SOLDER MASKED BOTH SIDES WITH
PLATED THROUGH HOLES; ALL SOCKETS
NCLUDED.
OPTIONAL FIRMWARE: 512 byte monitor
for use with Tarbell tape interface on 2,
1702A PROMs.
PROM/RAM KIT WITHOUT PROMS $ 89
+ OPTION A-SIO Rev. 1 or3 P+ S $129
+ OPTION B - 2 SIO (MITS) $129
+ OPTION C-SIO 2 (IMSAI) $129
+ OPTION D - Poly Video Interface $159
(Includes Video Driver)
California residents please add 6% tax.
IMMEDIATE DELIVERY FROM FACTORY
OR YOUR LOCAL COMPUTER STORE
T.M.
CCR G3APHC inc.
717 LAKEFIELD ROAD. SUITE F * WEST LAKE VILLAGE, CA 91361 * 1805) 497-0733
FEBRUARY 1977
CIRCLE INQUIRY NO. 35
INTERFACE AGE 35
There are several features worth noting. First, liberal
use of comments will help clarify the purpose of a
module. Second, the error checking routines are exten-
sive. In addition, the reason for the error or the
allowable range of the value is displayed as well as the
erroneous value. Third, the style of programming is
made as consistent as possible. For example, extensive
use of the GOSUB-RETURN statements allow the
main program logic to remain in sequence. When a
task must be done, the program GOSUB's to the task
and RETURN'S when it is done.
Fourth, GOTO statements were not used. In a few
cases, the IF - THEN (go to) is used to move program
control to reinitiate an input request or branch to a
return statement.
FIND ERRORS
►^"gosub ^
PRINT MESSAGE
INCREMENT
ERROR
COUNTER
-► SAME \S ABOVE I
CEPT I
5SAGE
MAY VARY
SAME AS ABOVE
J
91 9?
INITIALIZE
CALENDAR
ARRAYS
1
120 i
^GOSUB 301
GET DATE
MARGIN'
LOAN l?ATl
| GOSUB 400
TO CHECK
FOR ERRORS
ROUTINE
RETURN FROM
CHECK FOR
| ERRORS
ROUTINE
INPUT PORTION
COMPUTATION PORTION
■ OUTPUT PORTION
^ RE I URN ^
Main Program — Overview
Figure A
.J
SAME AS ABOVE
EXCEPT
MESSAGE
MAY VARY
SAME AS ABOVE
Check for Errors Routine
FROM GOSUB 210
(_>
INPUT
1 V*. L.AllON
NO R DIVIDEND
J
/
YES
1
1
RETURN ^
G
iNPUl
olUrON
SAIi DA I A
r— C )
Figure B
GOSUB 550
CHECK FOR
ERRORS
I 1
GOSUB 900
CHECK FOR
ERRORS
RETURN
36 INTERFACE AGE
Evaluate Covered Write-lnput Portions Figure C
FEBRUARY 1977
Example. Demonstration of Extensive Edits
COMPUTE
STOCK 1
OPTION I
COMPUTE
DIVIDEND
PAYMENT &
TOTAL
PROCEEDS
c
J
COM
DA
IN LI
OPT
3UTE
YS
= E OF
ION
h
COMPUTE NO
OF QUARTERS
IF >45 DAYS
GOSUB 1301
COMPUTE
TOTAL COST
YOUR COST
LOANED S
COMPUTE
BROKERAGE
ON STOCK IN
STOCK OUT, AND
OPTION
COMPUTE
MARGIN
« (
INTEREST
& TOTAL COST
Evaluate Covered Write-Computation
Figure D
T
PRINI
RESULTS
RETURN ^
^ RETURN ^
Evaluate Covered Write-Output
FEBRUARY 1977
Figure E
RUN
INPUT MM, DD, YY, MARGIN? (1=YES), L0AN RATE
776,0,0,4, 3. 70
DATE ERROR 76 0 0
DATE ERROR 76 0 0
INPUT MM, DD, YY, MARGIN? Cl=YES), LOAN RATE (#.##)
?76, 0, 0, 1, 3. 0
DATE ERROR 76 0 0
DATE ERROR 76 0 0
RAN GE= 5 TO MX 3
INPUT MM, DD,YY, MARGIN? Cl=YES), LOAN RATE (#.##)
? 12, 10, 76, 1, 7. 5
OUTPUT TO BE 32 OR 64 CHARACTERS?
?32
EVALUATION NO, DIVIDEND ( $/ SHARE/ QTR)
? 100, 6
DIVIDEND RANGE IS 0 TO $ 5 6
EVALUATION NO, DIVIDEND C $/ SHARE/ QTR )
? 100, . 08
NO. SHARES, PRICE/ SHARE, MARKET ( 1 =N YSE, 2^0 TO
? 125, 38. 87, 3
NOT EVEN 1 00 ' S 1 25
EXCHANGE IS 1 OR 2 3
NO. SHARES, PRICE/ SHARE, MARKET C 1=NYSE, 2=0 TO
?200, 38. 87, 2
EXPIRATION MONTH, STRIKE, C0ST/0PTI0N
? 0, 0, 0
MONTH ERROR 0
STRIKE < 1 0 OR > 3000
PRICE < S25 0
EXPIRATION MONTH, STRIKE, COST/OPTION
?4, 40, 287
COVERED WRITE NO 100 12 10 76
BUY 200 SHARES AT 38.87
SELL 2 4 40 * S AT $ 287 EACH
COST PROCEEDS
YOUR $ 3887 STOCK 8000
LOAN S 3887 OPTION 574
BROKER'S DIVIDEND 16
IN 42
OUT 42
OPTION 32
MARGIN 9 1
8590
RETURN
$ 609 ON
3504 IS
17.3 Z
131 DAYS
= 4 8. 2 %
ANNUALLY
BRK-EVEN
I S
S 35. 8
TOTALS 7 981
MORE? (UYES)
?0
STOP IN LINE 145
READY
10 REM STOCK MARKET HEDGE - COVERED WRITING STRATEGY
20 REM WRITTEN BY EDWARD CHRISTIAN 50N 12/15/76
90 DIM C(12) ; REM SET UP JULIAN DATE ARRAY '
91 DATA 0* 31*59* 90* 120* 151* 182* 212* 243* 273* 304* 334
92 FOR 1=1 T0 12 J READ CU) ; NEXT I
95 DIM MU2) ; REM SET UP M0NTH DESCRIPTIONS'
9 7 FOR 1=1 T0 12J M<I>=IJ NEXT I
120 G0SUB 30 1; REM SET UP INITIAL VALUES'
125 G0SUB 210; REM GET INPUT DATA AND EVALUATE POSITION'
130 PR IN T"M0 RE? <1=YES)"*
135 INPUT Al
140 IF A 1 = 1 THEN 125
145 STOP
210 GO SUB 501: REM GET STOCK DESCRIPTION AND DIVIDENDS'
220 GO SUB 601; REM GET STOCK PURCHASE DATA'
230 GO SUB 801; REM GET OPTION SALE SIDE DATA'
240 GO SUB 1 00 1 ; REM COMPUTE TOTAL PROCEEDS IF CALLED'
250 G0SUB 1201; REM COMPUTE TOTAL COSTS'
260 GO SUB 1501; REM COMPUTE NET PROFITS* RATE OF RETURN *
270 GO SUB 1601; REM DISPLAY RESULTS'
280 RETURN
301 PRINT"INPUT MM* DD* YY* MARGIN? (1=YES)* LOAN RATE (#.##)"
INTERFACE AGE 37
305 INPUT M/D/Y/M3/R
306 Ml=l
310 G0SUB 400; REM CHECK F0 R 0BVI0US INPUT ERR0RS
315 IF El > 0 THEN 301
320 PRINT"0UTPUT T0 BE 32 0R 64 CHARACTERS?
325 INPUT VI
330 RETURN
400 El = 0; REM El I S AN ERR0R FLAG '
403 IF M< 1 THEN G0SUB 450
406 IF M>12 THEN G0 SUB 450
409 IF D< 1 THEN G0SUB 450
412 IF D>31 THEN G0SUB 450
415 IF Y<0 THEN G0SUB 450
418 IF Y>99 THEN G0SUB 450
421 IF M3<>1 THEN 440; REM N0T MARGINED"
424 Ml=.5; REM SET T0 50X RATE"
427 IF R<5 THEN G0SUB 455
430 IF R>14 THEN G0SUB 455
440 RETURN
450 PRINT"DATE ERR0R "/ M/ Dj Y
451 G0SUB 2000
452 RETURN
455 PRINT"RAN GE= 5 T0 14X "/ R
456 G0SUB 2000
457 RETURN
501 PRINT"EVALUAT I0N N0> DIVIDEND ( 1/ SHARE/ QTR ) "
505 INPUT N9/D1
510 G0SUB 550; REM CHECK F0 R 0BV10US ERR0RS'
515 IF El > 0 THEN 50 1
520 RETURN
550 El = 0
551 IF DUO THEN G0SUB 575
554 IF Dl>5 THEN G0SUB 575
560 RETURN
575 PRINT" DIVIDEND RANGE IS 0 T0 S5 "/Dl
576 G0SUB 2000
577 RETURN
601 PRINT"N0. SHARES* PRI CE/ SHARE.* MARKET < 1=NYSE> 2=0 TO "
605 INPUT S1/P1/M9
610 G0SUB 701; REM CHECK F0R ERR0 R S '
615 IF El > 0 THEN 601
620 RETURN
701 El = 0; REM EDIT ST0CK DATA"
706 IF Sl<100 THEN G0SUB 751
709 S9= INTCS1/ 100)
712 IF S1<>S9*100 THEN G0SUB 75 1
715 IF Pl<10 THEN G0SUB 755
718 IF Pl>300 THEN G0 SUB 755
721 M9=1NT(M9)
724 IF M9<1 THEN G0 SUB 760
727 IF M9>2 THEN G0SUB 760
730 RETURN
751 PRINT"N0T EVEN 1 00 * S "/SI
752 G0SUB 2000
753 RETURN
755 PRINT"PRICE< 10 0R > 300 "/PI
756 G 0 SUB 2000
19" RACK S-100 BUS CARD
CAGE
8,192 x 8 BIT STATIC MEMORY
Exceptionally Low Power
UAUULUfO"
JUUUUUJLIt
FAST
LOW POWER
BUFFERED
PROTOTYPING BOARD
EXTENDER CARD
2K RAM /2K ROM
LOW PROFILE IC SOCKETS
Z80- CPU
16K RAM
EDGE CONNECTORS
DB25 CONNECTORS
ELECTRONIC CONTROL
TECHNOLOGY
P.O. BOX 6, UNION. NEW JERSEY 07083
757 RETURN
760 PRIN T "EXCHANGE IS 1 0R 2 ",M9
761 G0SUB 2000
762 RETURN
801 PRINT"EXPIRAT10N M0NTH/ STRIKE/ C0ST/0PTI0N"
805 INPUT M6/ S6/ P6
810 G0SUB 900; REM CHECK F0R ERR0RS'
815 IF E1>0 THEN 801
820 RETURN
900 E1=0
903 06=S1/1OO; REM C0MPUTE N0.0PTI0NS'
906 IF M6<1 THEN G0SUB 955
909 IF M6> 12 THEN G0SUB 955
912 IF S6<10 THEN G0SUB 960
915 IF S6>300 THEN G0SUB 960
918 IF P6<25 THEN G0SUB 965
930 RETURN
955 PRINT"M0NTH ERR0R "/M6
956 G0SUB 2000
957 RETURN
960 PRINT"STRIKE <10 0R >300"/S6
961 G0SUB 2000
962 RETURN
965 PRINT"PRICE < 125 "/ P6
966 G0SUB 2000
967 RETURN
1001 T1=INT(06*1OO*S6>; REM C0MPUTE PR0CEEDS IF CALLED'
1005 T2= INT(06*P6>; REM C0MPUTE 0PTI0N PR0CEEDS'
1010 G0SUB 1101; REM C0MPUTE DAYS IN LIFE AND i 0F QTRS'
1015 T3= INT(D1*S1*Q);REM T0TAL DIVIDEND INC0ME'
1020 T4=T1+T2+T3; REM C0MPUTE T0TAL INC0ME '
1025 RETURN
1101 Y1=Y*365; REM C0MPUTE DAYS IN LIFE*
1105 D2=C(M)+D+Y1
1110 D3 =C(M6)+20+Yl; REM ASSUME 0PTI0N EXPIRES 0N 20TH DAY'
1115 D4=D3-D2
1120 IF D4<0 THEN D4=D4+365
1125 Q=INT< (D4/90)+. 5); REM C0MPUTE QUARTERS F0R DIVIDENDS'
1130 RETURN
1201 C1 = 1NKS1*P1 );REM C0MPUTE T0TAL C0ST'
1205 C2= INT(C1*M1 ); REM C2 IS 0VIN CAPITAL'
1210 C3=C1-C2
1215 M8=M9; REM M8 IS MARKET TYPE F0R BR0KERAGE CALCULATI0N '
1220 X=C1
1225 X1=S1/ 100
1230 G0SUB 1401; REM C0MPUTE BR0KERAGE 0N SHARES'
1235 B1=B; REM B IS RETURNED VALUE 0F BR0KERAGE FEE*
1240 X=T1
124 5 X1=S1/ 100
1250 G0SUB 140W REM C0MPUTE BR0KERAGE 0N SHARE WHEN CALLED*
1255 B2=B
1260 X»T2
1265 Xl»06
1270 M8=3; REM M8»3 MEANS CB0E'
1275 G0SUB 1401; REM C0MPUTE BR0KERAGE 0N 0PTI0N SALE'
1280 B3=B
1285 C4..C3-T2-T3 + B1+B2 + B3; REM C4 IS NET CAPITAL B0RR0WED'
1290 M2= INT< < <R/ 1 0 0 ) *C4 ) *D4/ 365 ); REM MARGIN INTEREST C0ST'
1291 IF M 1 = 1 THEN M2 = 0; REM N0 INTEREST'
1292 C5 = C2 + C3+B1 + B2 + B3 + M2; REM C5 IS T0 TAL C0 ST '
1295 RETURN
1401 B= < CX*. 009)+22)+ (Xl*6); REM 0LD BR0KERAGE FEES'
1405 IF M8=l THEN B= INT (B*. 7 ) ; REM NYSE DISC0UNT'
1410 IF M8 = 2 THEN B=Xl*2l; REM 0TC C0 5 T '
1415 IF M8 = 3 THEN B= INKB*. 82); REM CB0 E '
1420 IF B<25 THEN B=25; REM MINIMUM BR0KERAGE '
1425 RETURN
150 1 N1 = T4-C5; REM C0MPUTE PR0 FIT AND RATE 0F RETURN '
1505 C6=C2-T2-T3+B1+B2+B3+M2; REM C6 IS NET CAPITAL'
1510 Rl = INKCNl*1000)/C6)/ 10
1515 R2= 1NT(3650*R1/D4)/ 1 0
1520 R3= (INK (Cl-N 1 )*100)/S1 )/ 100J REM L0VLR BREAKEVEN'
1525 RETURN
1601 PRIN T"C0 VERED WRITE N0"/N9/M/D/Y
1605 PRINT"BUY"/ SI/" SHARES AT"/ PI
1610 PRINT"SELL"/06/ " "/ M (M6 ) / S6/ " ' S AT J"/P6/"EACH"
1611 PRINT
1614 W2=l
1615 IF Wl>60 THEN V2= 1 . 9
1616 PRINT TAB(4*W2)/ "C0ST"/TAB< 13*W2)/ "PR0CEEDS"/
1617 PRINT TAB(W2*24)/ "RETURN"
1618 PRINT"Y0UR S"/ C2/ TAB (W2* 12)/
1620 PRINT"ST0CK "/ T I / TAB(W2*23 )/ "$"/
1622 PRINTN 1/ "0N"
1624 PRINT"L0AN J"/ C3/ TAB (W2* 12)/
1626 PRINT"0PT10N "/ T2/ TAB ( W2*2 3 ) /
1628 PRINTINT(C6)/"IS"
1630 PRINT"BR0KER ' S"/ TAB(W2*12)/
1632 PRINT^'DIVIDEND^/TS/ TAB(W2*23)/ XZ IX/ R1/"X"/ XX
1634. PRINT" IN "/ B 1 / TAB (W2*2 3 ) /
1636 PRINTD4/ "DAYS"
1638 PRINT" 0UT "/ B2/ TAB <W2*23 )/
1640 PRINT" ="/ R2/ "X"
1642 PRINT" 0PTI0N "/ B3/ TAB(W2*23 )/
1644 PRINT" ANNUALLY"
1646 PRINT"MARG IN "/M2/ TAB ( V2*23 ) /
1648 PRINT" BRK-EVEN"
1649 PRINTTAB(6)/ " "/ TABCW2* 12)/" "/ TAB <W2*2 3 ) /
1650 PRINT" IS"
1652 PRINT"T0TALS"/C5/TAB(W2*12)/ " "/ T4/ TAB(W2*23 )/
1654 PRINT" S"/ <INT(R3*10))/10
1660 RETURN
2000 E1»E1+1
200 1 RETURN
CIRCLE INQUIRY NO. 9
38 INTERFACE AGE
FEBRUARY 1977
MORE iHEIRON MAGIC!!!
Now . . . the already tremendous value of MERLIN, the best, most versatile video interface,
is an even greater value with the introduction of two inexpensive add-on features.
SUPER DENSE GRAPHICS
$39.00
320H X 200V RESOLUTION
MERLIN'S Super Dense Graphics is an add-on board
which mounts directly to the MERLIN Video Interface.
Each of 64,000 graphic dots is individually controllable
and located on-screen. The kit includes a manual with
X-Y coordinate transformation software listing.
SOFTWARE CASSETTE I/O
$29.00
1500 BAUD
MERLIN'S Software 1500 Baud Cassette I/O is an
external add-on to the MERLIN Video Interface. It
connects, along with a keyboard, to the MERLIN KYBD
and I/O Port through a 16 conductor flat cable. The kit
includes a manual with a listing of all necessary
software, also available as part of the MEI ROM.
For more information, fast, write us direct.
Pricing:
MERLIN Assm $349.00
MBI ROM/RAM $ 39.95
Super Dense Add-on $ 39.00
MERLIN Manual $ 10.00
MERLIN Kit $269.00
MEI ROM $ 34.95
Cassette I/O Add-on $ 29.00
Master Charge and BankAmericard accepted.
MiniTerm Associates, inc,
Box 268, Bedford, Mass. 01730 (617) 648-1200
FEBRUARY 1977
CIRCLE INQUIRY NO. 14
INTERFACE AGE 39
By Tom Mozur
WARP FACTORS
Captain's Log: Star Date 3814. 2:
Quadrant 14-Z2 Sector A-ll; in po-
lar orbit around third planet, Tellian
system...
"and all corrections have been made in the
warp mechanisms at this remote site. Operations
are satisfactory now. Fortunately, this planet is
uninhabited — no telling how much havoc the
warp forces could have caused to organic life."
"I close this entry with the narrative of a baffling
discovery we made just before beaming up."
"Kkkhh? Archie? Where are you? Let's go."
"I believe Mr. Tyson is inspecting the null zone
area behind the flux modulators, Captain."
"Aye, Captain; could you and Mr. Kkkhh come over
here? I've found something."
"Okay, Archie, what is it? Some residual temporal
perturbation still in the area?"
"No, Captain, nothing like that. See here, in the
sand — some kind of apparatus that is not a part of
the flux modulators, or any other system at this site."
"Let's have a look."
"Well, Mr. Kkkhh, any ideas?"
"Interesting, Captain. The printed text on this ap-
paratus appears to be in an archaic form of English."
"H'mm, yes, I see what you mean. Educator two
microcomputer HEP kit by Motorola, if I interpret cor-
rectly."
"Captain?"
"Yes, Mr. Tyson?"
"I've scanned engineering references in the ship's
archives many times, but I've na' come across a head-
ing called 'microcomputer.' "
"Perhaps, Mr. Tyson, you did not access the refer-
ences in a thorough manner."
"Your ears! Mr. Kkkhh!"
"Gentlemen! Time to beam up. Bring the unit
along, we'll have Computer do an analysis."
"Computer."
"Working."
"Identify the purpose, origin and age of this unit."
"Unit is a microcomputer, a primitive ancestor of
myself. Point of origin, Earth circa late 1900s, Earth
calendar. Age, less than thirty days old."
"What?!!"
"Easy, Archie. Computer: elaborate."
"Unit is the Educator II, a stored-program, general-
purpose digital computer kit that was offered by the
HEP/MRO department of an organization known as
Motorola. A block diagram of the unit is contained in
my memory banks."
"Computer, display the diagram; continue the de-
scription."
"Yes, Captain. The unit contains M6800 micro-
computer products. Specifically, a HEP C4801L
microprocessing unit (MPU), a C4821L Peripheral
Interface Adapter (PIA) and a C4811L 128x8 Ran-
dom Access Memory (RAM). There are provisions on
the single board kit for another 128x8 RAM. A built-
in interface allows additional user programs to be
stored on and loaded from audio cassette tapes. User
programs on cassettes may be accessed and loaded
into RAM by means of a software search feature.
Said interface and search features are routines con-
tained in Programmable Read Only Memories
(PROMs) on the board. The two 512x4 PROMs also
contain an executive monitor for user/computer inter-
action by means of front panel switches and a light
emitting diode (LED) display. A clock circuit, running
at 0.5 MHz, is also on-board. The unit is self-con-
tained; all parts are included as well as a complete
construction manual. The unit requires a 5 V, 1 .2 A
power source."
"Computer, what other modes of communication
were available to the users of this Educator II?"
"At the point in time when this unit was intro-
duced, Mr. Kkkhh, tactile/visual interaction was in
vogue. Verbal interaction was in its infancy."
"Highly interesting. Computer, how was this tac-
tile/visual communication implemented?"
"User/computer dialogue was at the machine code
level for the initial Educator II kit. Object code
patterns were set by means of eight single pole, dou-
ble throw switches (SPDT) and loaded, examined and
modified by three SPDT momentary switches. Bytes
of code were displayed on eight LEDs. Subsequent
Motorola products and user system expansions pro-
duced highly articulate configurations."
"Computer, continue with the description of the
Educator II.
"Yes, Captain. Edge connectors on the board pro-
vide an interface to the PIA as well as all address,
data and control bus signals for system expansion. A
40 INTERFACE AGE
FEBRUARY 1977
At technology Level 8
great strides were
made in microcomputing
row* fK T A$t tUt f O feftj
j ir£ f f l i i i r i-i-
» ■ ' » ' i ■ ' ■ i- j- i l_LLL.i
Educator II Microcomputer
Do those aboard the ancient
vessels in Space know
what they contributed?
test-as-you-build approach provided for an accurate,
low-error kit construction. Assembly time was typi-
cally one Earth evening. A complete construction
manual as well as a full complement of parts helped
to hold the assembly time to such short duration.
Tutorial support documentation, designed as aids for
understanding MPUs and programming concepts, was
also included. Shortly after Educator N's introduction,
other HEP support kits, such as a power supply and
memory boards, were also introduced."
"All well and good, but, Captain, we still ha' one
verrry perplexin' question: How can something from
the 20th century, Earth, cross par-sees of space and
still be new?"
"Yes, Archie, perplexing, true; but not entirely
improbable, eh, Kkkhh?"
"Quite plausible, Captain."
"Computer, state the particulars of Educator N's
introduction."
"Educator II Microcomputer Kit introduced March
1977, Earth calendar. Place of manufacture: north-
ern hemisphere of Earth, in the country then known
as the United States of America, in the State then
known as Arizona. When this culture reached techno-
logical Level 8, this manufacturer identified as Motor-
ola, Inc. maintained a lead in the design and appli-
cation of signal technology."
"Does that suggest anything to you, Mr. Kkkhh?"
"The factors are favorable . . . simplicity, economy,
availability. Yes, given such a potential target area,
the probability of exchange would indeed be high.
There is, of course, only one way to enforce this hypo-
thesis, Captain."
"Do the honors, Mr. Kkkhh."
"Computer."
"Working."
"Computer, state the occurrence and periods of
spatial alignments of Earth and Tellian III between
January, 1977, Earth calendar, and Star Date 3814.2.
Specify Star Date."
"Occurrence: 1977.5; 2995.84; 3814.13; Period:
35 Star Hours aligned, 140 Star Hours non-aligned.
Fifty-two pulses per occurrence."
"H'mmm; yes, highly probable, Captain. An ex-
change could occur again at a conjugate site."
"Agreed Archie, take this Educator II and beam it
down to the location that is diametrically opposite to
the location at which you found it."
"Uh, aye, Captain. I take it then that you don't want
to keep this Educator II in ships stores?"
"Right, Archie. No matter how this micro-
computer appeared on Tellian III, we owe the ori-
ginal owner the right to retrieve it. Who knows but
that this, this Educator II may be the seed bed of
ideas that led to our computer."
"Aye, Captain."
"Mr. Ooll, lay in a course to Digitus IV, warp factor
five."
"Aye, aye, Captain."
FEBRUARY 1977
INTERFACE AGE 41
Data Address
and Control
to Edge
Connector
| Optional RAM j
| 128 bytes j
< I
1 I
ROM Executive
512 bytes
PIA
I/O
Interrupt
Function
Switches
42 INTERFACE AGE FEBRUARY 1977
Apple Introduces the First Low Cost Microcomputer System with a
Video Tenrrinal and 8K Bytes of RAM on a Single PC Card.
The Apple Computer. A truly com-
plete microcomputer system on a
single PC board. Based on the MOS
Technology 6502 microprocessor, the
Apple also has a built-in video termi-
nal and sockets for 8K bytes of on-
board RAM memory. With the addi-
tion of a keyboard and video monitor,
you'll have an extremely powerful
computer system that can be used for
anything from developing programs
to playing games or running BASIC.
Combining the computer, video
terminal and dynamic memory on a
single board has resulted in a large
reduction in chip count, which means
more reliability and lowered cost.
Since the Apple comes fully assem-
bled, tested & burned-in and has a
complete power supply on-board, ini-
tial set-up is essentially "hassle free"
and you can be running within min-
utes. At $666.66 (including 4K
bytes RAM!) it opens many new
possibilities for users and systems
manufacturers.
You Don't Need
an Expensive Teletype.
Using the built-in video terminal
and keyboard interface, you avoid all
the expense, noise and maintenance
associated with a teletype. And the
Apple video terminal is six times
faster than a teletype, which means
more throughput and less waiting.
The Apple connects directly to a
video monitor (or home TV with an
inexpensive RF modulator) and dis-
plays 960 easy to read characters in 24
rows of 40 characters per line with au-
tomatic scrolling. The video display
section contains its own IK bytes of
memory, so all the RAM memory is
available for user programs. And the
Keyboard Interface lets you use al-
most any ASCII-encoded keyboard.
The Apple Computer makes it pos-
sible for many people with limited
budgets to step up to a video terminal
as an I/O device for their computer.
No More Switches,
No More Lights.
Compared to switches and LED's,
a video terminal can display vast
amounts of information simulta-
neously. The Apple video terminal
can display the contents of 192 mem-
ory locations at once on the screen.
And the firmware in PROMS enables
you to enter, display and debug pro-
grams (all in hex) from the keyboard,
rendering a front panel unnecessary.
The firmware also allows your pro-
grams to print characters on the dis-
play, and since youTl be looking at
letters and numbers instead of just
LED's, the door is open to all kinds
of alphanumeric software (i.e.,
Games and BASIC).
8K Bytes RAM in 16 Chips!
The Apple Computer uses the new
16-pin 4K dynamic memory chips.
They are faster and take Vi the space
and power of even the low power
2102's (the memory chip that every-
one else uses). That means 8K bytes
in sixteen chips. It also means no
more 28 amp power supplies.
The system is fully expandable to
65K via an edge connector which car-
ries both the address and data busses,
power supplies and all timing signals.
All dynamic memory refreshing for
both on and off-board memory is
done automatically. Also, the Apple
Computer can be upgraded to use the
16K chips when they become availa-
Byte into an Apple
ble. That's 32K bytes on-board RAM
in 16 ICs — the equivalent of 256
2102's!
A Little Cassette Board
That Works!
Unlike many other cassette boards
on the marketplace, ours works every
time. It plugs directly into the upright
connector on the main board and
stands only 2" tall. And since it is
very fast (1500 bits per second), you
can read or write 4K bytes in about
20 seconds. All timing is done in
software, which results in crystal-
controlled accuracy and uniformity
from unit to unit.
Unlike some other cassette inter-
faces which require an expensive tape
recorder, the Apple Cassette Inter-
face works reliably with almost any
audio-grade cassette recorder.
Software:
A tape of APPLE BASIC is includ-
ed free with the Cassette Interface.
Apple Basic features immediate error
messages and fast execution, and lets
you program in a higher level lan-
guage immediately and without
added cost. Also available now are a
dis-assembler and many games, with
many software packages, (including a
macro assembler) in the works. And
since our philosophy is to provide
software for our machines free or at
minimal cost, you won't be continu-
ally paying for access to this growing
software library.
The Apple Computer is in stock at
almost all major computer stores. (If
your local computer store doesn't
carry our products, encourage them
or write us direct). Dealer inquiries
invited.
. $666.66*
eludes 4K bytes RAM
COMPLETE
VIDEO TERMINAL
ELECTRONICS *
LOW-PROFILE
SOCKETS
ON ALL ICS
FIRMWARE
IN PROMS
BREADBOARD
AREA
AmSBBSSSi
CRYSTAL
CONTROLLED
TIMING
f y y y mm 11 Utf* !
KEYBOARD
INTERFACE
6502
MICROPROCESSOR
4 FULLY REGULATED
POWER SUPPLIES
EXPANSION
✓ CONNECTOR
CASSETTE
- BOARD
CONNECTOR
8K BYTES RAM
APPLE Computer Company • 770 Welch Rd., Palo Alto, CA 94304 • (415) 326-4248
FEBRUARY 1977 CIRCLE INQUIRY NO. 1 INTERFACE AGE 43
FLIP OVER
OUR FLOPPY
Only $750 from Peripheral Vision.
Peripheral Vision is a brand-new company that's dedi-
cated to selling reasonably priced peripherals for various
manufacturers' CPU's.
We think you'll flip over our first product.
It's a full-size floppy disk for the Altair-lmsai plug-in
compatible S-100 BUS. And it's available for as low as $750.
Here are the features:
• 1 interface card supports 4 drives
• Stores over 300,000 bytes per floppy
• Bootstrap EPROM included — no more toggling or
paper tape
• Completely S-100 plug-in compatible
• Interface cabling included
• Drive is from Innovex (the originator of the floppy
concept) — assembled and tested
• Interface card design is licensed from Dr. Kenneth
Welles and the Digital Group
• Disk operating system with file management system
included on floppy
• Cabinet and power supply optional
Prices: Kit Assm.
Interface card kit and
assembled and tested drive $750 $850
Power supply— +24V at 2A 45 65
Cabinet — Optima, blue — 85
Now, a little more about our company.
Peripheral Vision may be brand-new, but we have some
old-fashioned ideas about how to run our business.
We know there are serious incompatibilities among the
different manufacturers' peripherals and CPU's. We want to
get them together. And, we want to bring significant new
products to market — products consisting of everything from
adaptation instructions/kits for hardware and software to
major new products.
It's a tall order, but we feel we're up to the task.
Peripheral Vision has already obtained a license from
The Digital Group to adapt versions of some of their prod-
ucts to the S-100 BUS. And we're working on getting more
from other companies.
Most important to our customers, Peripheral Vision is
committed to helping you get along with your computer.
We'll do all we can to make it easy.
Write us now for all the information on our company,
our philosophy and our exciting line of products. And be
prepared to flip over all of it.
RO. Box 6267/ Denver. Colorado 80206/(303] 733-1678
Send me the works, and I just might flip over it!
Name
44 INTERFACE AGE
CIRCLE INQUIRY NO. 23
FEBRUARY 1977
BUILDING A 12-BIT
ANALOG TO DIGITAL
CONVERTER FOR
REAL TIME PROBLEMS
By Roger W Brown
In order to make your computer aware of its en-
vironment it is necessary to input sensory data into its
memory. Since most sensory data encountered in our
environment are analog in nature they must be
converted to digital value before the computer can un-
derstand them. This conversion process is
accomplished by using an A/D converter as an inter-
face between your computer and the analog signal
supplied.
The heart of any real world interface is an analog to
digital (A/D) converter. This A/D converter functions as
a translator for the various analog stimuli from the out-
side world converting them into computer code. The
analog stimuli are first converted into analog voltages
by a transducer, such as a temperature module, and
then input to the A/D converter which transforms the
analog signal into its respective digital value. In order
to minimize cost, additional sensor modules may be
connected to a multiplexer board to allow several sen-
sors to share the same A/D converter. Likewise, the
output from the computer may be converted into its
analog equivalent by a digital to analog (D/A) con-
verter. This permits the computer to do such things as
drawing plots, or displaying graphics on an os-
cilloscope or television screen, or generating a com-
puter voice to talk to you. Many outputs may be
generated at the same time by using one D/A con-
verter and another multiplexer board, to reverse the
above multiplexer procedure.
The A/D converter will perform the actual con-
version of the analog signal into a binary word, for
processing by the computer. The larger the binary word
the greater the resolution and the more accurately the
computer will be informed about the input signal. For
example, a 10 bit A/D converter set for ±5 volt
operation has 512 steps of resolution between 0 and 5
volts and 1024 steps between —5 and +5 volts. This
amounts to a resolution of better then 0.010 volts or
1 0mV per step. Consequently a 1 2 bit unit would have
resolution to 2mV. The resolution of the A/D converter
best suited to your needs will depend upon your par-
ticular application. However, it is well to remember
that a 1 6 bit unit can be used as a 1 0 or 8 bit A/D con-
verter when less resolution and greater speed are re-
quired, but an 8 or 10 bit unit cannot be used as a 1 6
bit A/D converter.
Once you have interfaced your computer with an
A/D and/or a D/A converter module you are ready
to hook-up the external sensors. If more than one sen-
sor for an A/D converter or more than one output for a
D/A converter are desired, a multiplexer must be
interfaced between the converter module and the out-
side equipments.
Uses to which you could put your computer requir-
ing A/D conversion are extremely numerous so only a
few are given here. Your computer could be used
around the house to provide you with a very
sophisticated fire, smoke or intruder alarm system
without the false alarm flaws of other systems
presently on the market. Or it can be used to monitor
outside weather conditions to forewarn of the pending
dangers from water pipes and car radiators freeze up. As
an external temperature monitor using wind speed and
pressure gauges the system can predict local weather
conditions for you. If you have a desire for privacy or
need security you could use your computer to scramble
your phone communications. In the garage your com-
puter can monitor the operating systems of your car.
The new Volkswagens have a connector on them
specifically for this purpose. Auto systems such as
timing, dwell, combustion, air pressure, engine torque,
cam wear, plug and wire conditions, etc. can be
monitored for preventative maintenance, tune-ups, and
repairs. If you do much boating your computer can
keep track of your speed, time, wind and water speed.
From this it can tell you your position at any time and
instruct you on course change to make to reach a
desired target in the least amount of time, taking drift
and winds into account. Tied to a radio receiver it can
function as your inertial navigation system by receiving
and processing Loran or Navy satellite signals. On-
board it could also serve as the processing center for
side scan sonar, eliminating the costly recording and
processing equipment now in use. By interfacing a
microphone to your computer it could be taught to un-
derstand voice commands and with the addition of a
speaker it could even talk to you. With the new MOS
matrix IC's your computer could be given sight and
used to monitor any room in your house. The list is
endless and these are but a few uses shown here.
However, to provide sight and sound functions, a very
large memory would be required.
FEBRUARY 1977
INTERFACE AGE 45
THE LOGICAL CHOICE-First in a series
Logic Probe 1 is a compact, enor-
mously versatile design, test and trouble-
shooting tool for all types of digital
applications. By simply connecting the
clip leads to the circuit's power supply,
setting a switch to the proper logic family
and touching the probe tip to the node
under test, you get an instant picture of
circuit conditions.
LP-1 's unique circuitry— which
combines the functions of level detector,
pulse detector, pulse stretcher and
memory— makes one-shot, low-rep-rate,
narrow pulses— nearly impossible to see,
even with a fast scope— easily detectable
and visible. HI LED indicates logic "1",
LO LED, logic "0", and all pulse transi-
tions—positive and negative as narrow
as 50 nanoseconds— are stretched to 1/3
second and displayed on the PULSE LED.
By setting the PULSE/MEMORY switch
to MEMORY, single-shot events as well
as low- rep-rate events can be stored
indefinitely.
While high-frequency (5-10MHz)
signals cause the "pulse" LED to blink at
a 3Hz rate, there is an additional indica-
tion with unsymmetrical pulses: with duty
cycles of less than 30%, the LO LED will
light, while duty cycles over 70% will
light the HI LED.
In all modes, high input impedance
(100K) virtually eliminates loading prob-
lems, and impedance is constant for all
states. LP-1 also features over-voltage
and reverse-polarity protection. Housed
in a rugged, high-impact plastic case
with strain-relieved power cables, it's
built to provide reliable day-in, day-out
service for years to come.
IONS PULSE LEO BLINKS
HI LED ON .LO LEO DOES NOT RESPOND TO NARROW PULSES
n_n_[i
LO LED ON; HI LED DOES NOT RESPOND TO NARROW PULSES
CSC'S MULTI-FAMILY LOGIC PROBE 1.
AT $44.95, IT DIGS UP A LOT OF INFORMATION WITHOUT
BURYING YOUR BUDGET.
HI/LO LED's-Display level
(Hl-logic "1", LO-logic "0")
of signal activity at node-
under test
PULSE LED— Lets you know
what's going on— and off.
Indicates positive and nega-
tive pulse and level transi-
tions. LP-1 stretches pulses
as narrow as 50 nano-
seconds to full sec.
(3Hz pulse rate)
PULSE/MEMORY Switch-
PULSE position detects
and stretches pulses as nar-
row as 50 nanoseconds to
1/3 sec. Switch to MEMORY
and it stores single shot and
ow-rep-rate events indefi-
nitely; HI/LO LED's remain
active
Non-corrosive nickel-
plated probe tip and clip
leads— For reliable contacts
and maximum life
Logic Family Switch—
TTL/DTL or CMOS matches
Logic "1 " and "0" levels,
, for greater versatility. High
Input Impedance— 100K
virtually eliminates circuit
loading problems and is
constant in both "0" and
"1" states. CMOS position
also compatible with HTL,
HiNILand MOS logic
Protected— Features built-in
reverse polarity and over-
voltage protection; strain-
relieved power cable
CONTINENTAL SPECIALTIES CORPORATION
EASY DOES IT
44 Kendall St . Box 1942 New Haven. CT 06509
TWX: 710-465-1227
West Coast office: Box 7809. San Francisco. CA 94119
TWX: 910-372-7992
46 INTERFACE AGE .
See your CSC dealer or call 203-624-3103 (East Coast) or 415-421-8872 (West Coast)
9 AM to 5 PM local time. Major credit cards accepted. Add $2.50 for shipping and
handling in the U.S. and Canada on direct orders of $50.00 or less; $3.00 for orders
over $50.00. On all foreign orders add 15% to cover shipping and handling.
CIRCLE INQUIRY NO. 5 FEBRUARY 1977
There are three basic types of A/D converters:
ramp, successive approximation and tracking. First in
the order mentioned is the ramp converter which uses
a countup method of conversion and is best suited for
very slow changing data. The major drawbacks to this
type of converter are its extremely slow speed of 2
clock pulses per conversion and that data can only be
taken out at the end of the conversion cycle. The
second type of converter is the successive approxi-
mation A/D. This type is the most expensive as it re-
quires additional data holding circuits; but then it is the
fastest type of converter requiring only one clock cycle
for each bit of resolution. The disadvantage associated
with this type of converter other than high cost is its
method of only sampling the input signal and then
making a quick approximation of what it might be.
Since the input signal is only sampled every N clock
pulses this could amount to considerable error when
observing very fast signals without a tell-tale error
sign. The output from this type of converter is only true
at the end of the conversion cycle. These types of con-
verters are easily recognized as conversion time is
always specified for the unit. The third type is the
tracking A/D converter. This unit is a compromise
between the first two types of converters. Essentially
this type locks on to the input analog signal and as long
as the slew rate of the loop is not exceeded the digital
output will equal exactly the analog input to the
resolution of the converter. If the slew rate is ex-
ceeded, the output immediately becomes erratic and
warns you of the need for adjustment. What must be
done to observe signals that are faster than the slew
rate of the converter is to reduce the input amplitude
and you are back in business again at a decreased
resolution. An additional advantage of the tracking
A/D converter over the other two types discussed here
is the continuous availability of data at the output of
the converter.
This project will discuss the construction of a 1 2-bit
tracking A/D Converter. The entire schematic of the
converter is shown in Figure 1 and the schematic for
the power supply is shown in Figure 2.
ABOUT THE CIRCUIT:
An analog signal is presented to the input of IC4 (on
an operational amplifier). This signal may be either a
D.C. level or an A.C. signal. IC4 is used as in input
buffer amplifier. With the addition of one poten-
tiometer its gain may be made variable, or with two
diodes, its gain may be made logarithmic. These circuit
designs are available in application notes for the IC
manufacturer. The output of IC4 drives the low im-
pedance input of a comparator, IC5. C9 is used to
reduce the effects of high frequency noise on the out-
put of IC5, that may be present on the input signal. IC5
is in the A/D feedback loop which consists of ICs 6
through 14. When the feedback signal, on pin #3 of
CLOCK
C1I R19
JC9
\2
13 a
Figure 1. 12 Bit A/D
MSB
to
1 1
fC13
a
R29
J_ R30
FEBRUARY 1977
INTERFACE AGE 47
Figure 2. I
IC5, is greater than the true input signal, the output
goes positive reversing the up/down counters, IC9
through IC1 1 . The output of IC5 after filtering out the
switching transients through R 1 8 and C1 0, goes to the
input of IC6. The main function of IC6 is to select
either IC5 for the feedback path or an optional mul-
tiplexer, the theme of a future article. In the present
schematic the multiplexer input is disabled. The output
from IC6 goes into IC7 along with the clock pulses
from IC8. When the output of the comparator is high
so is the output of IC6, then IC7 forces the up/down
counters to count down. This continues until the com-
parator output goes low, at which time IC7 causes the
counters' to count up. This process is repeated quite
rapidly as the clock is operating at about 10MHz. The
clock pulses are generated from IC8 with R19. R20
and C 1 1 as passive feedback elements in a TTL loop.
These could be replaced by a crystal if a specific
operating frequency is desired. The operations of the
up/down counters are used to exercise the two 6 bit
D/A converters and generate the binary coding. These
two D/As, IC12 and IC13, are the heart of the system.
Each converts its binary input to an equivalent analog
voltage. The analog voltages of each D/A is summed,
using different weighting functions by IC14. C12 is
used to remove any switching noise that may have
reached the converters. R25 is used to adjust the max-
imum input voltage range, peak to peak. R30 is used
for adjusting the A/D for bipolar or biased operations.
>r Supply
The output of IC14 is returned to IC5 where it is
compared to the input signal and the cycle starts again.
CONSTRUCTION
Component placement is not critical. Make certain
the diodes and electrolytic capacitors are properly
connected and their polarity is arrested. Use a 40 watt
or less soldering iron with fine resin core solder. Apply
only enough heat to assure a good connection. All of
the parts are standard consumer grade parts. With the
exception of R23 and R24 none of the parts is critical
and substitutions may be made. All resistors are 20%
tolerance and all capacitors are 25 volts, except where
noted. For the IC's I would recommend the use of
Molex Soldercons as this will eliminate the possibility
of heat damage. The power supply can be assembled
on the same PC board as the A/D, thus reducing the
number of interconnects. The inputs and outputs may
be labeled for ease of identification. This can be done
with the aid of one of the inexpensive label makers on
the market today. The board may be placed inside your
computer and use its power supply, hence reducing the
need for the two transformers and filters.
SET-UP AND CHECK-OUT
After you have completed the assembly and
checked all the regulated voltages, you are ready to
48 INTERFACE AGE
FEBRUARY 1977
Subsystem "B" makes the
computer you already have
work almost as well as
a new Sol -20.
Add it now, and for a limited time
we'll throw in a new module
with 512 bytes
of preprogrammed PROAA
and 1024 bytes
of RAAA memory free!
Processor Technology's Subsystem "ET
puts together the major system elements you need
to get your Altair or IMSAI up and running.
You get both RAM and PROM memory,
parallel, serial, cassette and video display inter-
faces, and software. Software includes a 512
byte bootstrap loader program so you can load
any Processor Technology CUTS ("Byte/Kansas
City") 1200 BAUD cassette tapes. Standardized
subroutines in ROM, similar to those in a Sol
personality module, are used by many Processor
Technology software packages to improve
program efficiency. You'll find you rarely need to
touch your front panel switches. With our
Subsystem kiET you are up and running as soon
as you turn on the power.
Subsystem Model
B55
B95
B175
Total memory
provided (bytes)
5632
9728
17920
Display I/O
VDM-1
VDM-1
VDM-1
Parallel, Serial I/O
3P+S
3P+S
3P+S
Tape Cassette I/O
CUTS
CUTS
CUTS
Memory
4KRA
8KRA
16KRA
Price
$594
S730
S964
NOTE: The GPM module with both RAM and PROM
is included FREE in all the above subsystems. The GPM kit
is S129 if purchased separately.
The ALS-8/ROM chip set is $159. SIM-1 & TXT-2/ROM
add-on set is $60 and requires both GPM and ALS-8/ROM.
Three subsystems are available, depending
on your memory requirements. Each Subsystem
"ET includes five S-100 bus compatible modules
as listed below. Each is dependent upon our new
GPM module (GPM = General Purpose
Memory) which provides 1024 bytes of low power
static RAM and 512 bytes of preprogrammed
EPROM as well as space for up to 8192 bytes
more of ROM or 2708 type EPROM . The GPM
module accepts the new ROM version of our well
known ALS-8 Editor/Assembler software package.
With Subsystem "ET you have guaranteed
compatibility with all Processor Technology
software and hardware products.
FEBRUARY 1977 CIRCLE INQUIRY NO. 26
I want Subsystem "B" to get my Altair or
lAASAI up and running.
□ Enclosed is a check for 5
California residents add sales tax.
No shipping charge.
□ Mastercharge # .
(include Interbank No. and
expiration date)
□ Send more information
Name
I want:
□ B55at $594
□ B95 at $730
□ B175 at $964
Address .
fiij
. State.
6200 Hollis Street, Box G
Emeryville, CA 94608 (415) 652-8080
INTERFACE AGE 49
set-up the converter for real time operations. The set-
up will be discussed for bipolar operations of the A/D.
Other biased operations would be set-up similarly. First
ground the analog input to IC4. Then adjust R30 for 5
volt output for bipolar operation, zero volts with
respect to circuit ground, for positive operation only or
10 volts for negative input signals. Place a voltmeter
on the output of pin #1 0 on IC1 4 . The voltmeter should
read zero volts, adjust R30 until it reads zero volts,
within 1/10 volts or so. Adjust R25 to approximately
1100 ohms total resistance. Recheck the voltmeter
and adjust R30 as above. Next, apply a 4-4 volt DC
voltage to the analog input of IC4. Adjust R25 until the
voltmeter reads 4-4 volts. Then ground the input and
check for zero volts. If within 20mV proceed otherwise
"tweek" R30. Now apply a —4 volt DC level to the
input and check the voltmeter. If it doesn't indicate
volts try reversing the leads; if it still doesn't indicate
—4 volts adjust R25 accordingly. Repeat the zero
check again and your A/D should be ready to go.
If you have an oscilloscope connect it to pin #1 0 of
IC14 and apply an approximate 100 Hz sine wave
signal with an 8 volt peak to peak level to the analog
input. The scope will trace out the reconstructed input
signal. Now slowly increase the frequency until the
trace breaks, (see Figure 3). This is the maximum fre-
quency sine wave signal that your unit can track for an
8 volt input signal. If you reduce the signal to 1 volt
and repeat this you will find the trace now tracks until
the frequency has been increased to eight times what
is observed for the 8 volt signal. For a 12 MHz clock
the A/D can track a 1 100 Hz sine wave signal and the
settling time to 1 2 bits is less then 3 microseconds. As
adjusted this 1 2 bit A/D offers resolution steps of 1 .22
MV per bit for 5 volt bipolar operation. R25 is used to
set the full scale voltage level. If its resistance is set to
about 2200 ohms instead of 1 100 ohms, as adjusted
above, the unit will have a resolution of 0.625 mV per
step but will only accept signals that deviate less then
2.5 volts about ground.
This circuit, as can be seen, offers quite a bit of
flexibility in its design and operation. Its operation may
be optimized to accommodate virtually any type of in-
put signal. In addition if desired its clock and operations
may be synchronized with an external clock. After you
have interfaced this converter with your computer, by
simply connecting the 12 digital bits to the parallel
input, you are ready to hook-up a sensor and do some
real time processing. Future articles will describe a
multiplexer module and various sensor modules to be
used with your A/D.
Normal Operation
Comparator Input
Analog Input
Reconstructed Analog Input
Slew Rate Limiting
Comparator Input
Analog Input
Reconstructed Analog Input
Input Over-range
Comparator Input
Analog Input
Reconstructed Analog Input
50 INTERFACE AGE
FEBRUARY 1977
Versatility
CEI/Custom Keyboards
have it
What goes on these keys is up to you
Our aim or CEI is ro provide you the hobbiest, with
o keyboard system rhor con perform any task you could
possibly demand. Diode encoding coupled with one
switch register encoded key allows complete latitude
in key definition. Doth positive and negative going
strobes are provided for interfacing. Visual indication of
keyboard status is provided by 22 LED's, 1 3 of which can
have user defined meaning. Shift and shift lock are
provided
Unliminted versatility w/ 1 00 Keys
90 are encoded off of a Diode encoding allows a
diode matrix and are
fully user defined.
1 - is encoded by an 8
switch register to allow
easy redefination
1 - on board reset key
FEBRUARY 1977
multitude of encoding
techniques. ECIBIC,
ASCII, BAUDOT, RADIX
50, FIELDATA or codes
of your own design.
Complete documentation
CIRCLE INQUIRY NO. 4
Computer Electronics Inc.
37433 Centralmont Place
Fremont Calif. 94536
Phone (415) 796-5760
□ Send KD3A Kit. Supplied
with all switches, diodes, PC
board, TTL-ICs, +5v. regulator,
connecting ribbon cable $95.95
□ Send KD3D Kit. Same as
above except without diodes,
TTL-ICs, + 5v. regulator 6
ribbon cable. $49.95
□ Case for above $29.95
NAME
ADDRESS
CITY/STATE/ZIP
NOTE: Calif, residents add
6% sales tax
INTERFACE AGE 51
Resistors — 10% carbon. V&W unless marked
No.
ohms.
No.
ohms.
No.
ohms.
R1
R2
R3
R4
R5
R6
R7
R8
R9
R10
270
12@ 5W
3.6K
5.4K
12. 3K
27
150
3.6K
4.6K
5.1K
R11
R12
R13
R14
R15
R16
R17
R18
R19
R20
220 2W
3.6K
3.6K
3.8K
2.8K
1.1M
22K
1.5K
20
200
R21 220
R22 220
R23 16.8K 1%
R24 1.05K1%
R25 5K trimpot
R26 22K
R27 51 K
R28 51 K
R29 51 K
R30 10K trimpot
Capacitors:
No.
Specs
C1. C3. C4
1000 mF (a
C2, C5
.01 mF
C6. C7, C8
.001 mF
*C9
560 pF
#C10, C11
100 pF
C12
1000 pF
IC1, IC2, IC3
#723
IC4
#741
IC5
#710
IC6, IC7, IC8
#7400
IC9. IC10. IC1 1
#74193
IC12, IC13
#DAC-01
IC14
#747
T1 secondary 8V to 12V @ 1A
T2 secondary 24V (ct) % at 1A
CR1. CR2. CR3. CR4, CR5. CR6 1N 4006
CR7 1N 967
Q1. 02. Q3 2N 3741
Misc.
P.C. Vector Board 4 "x9"
Line Cord
On/Oft switch
Chassis box 6"x1 0"x13'/2"
Hook-up wire, solder, etc.
Parallel interface connector
Note; All of the parts excluding the misc. parts and trans- Board is also available from this source for $18.00. A P.C.
formers are available in kit form for $1 19.50 from Scientific Board plug compatible with the Altair 8800 is available for
Research Inst.; P.O. Box 83; Marcy. NY 13403. The P.C. $21.60.
'These parts may be hand picked for optimum performance.
IN WIRE- WRAPPING (o|c) HAS THE LIME..
HOBBY- WRAP-30 WIRE-WRAPPING, STRIPPING, UNWRAPPING TOOL FOR AWG 30 (-025 SQUARE POST)
STRIP
WRAP
UNWRAP
OH MACHINE & TOOL 4 Oitl'OitA TiO\
J4&J, CONbEB SinteT, UftOHH, h£w YORK, M.t I047A U fl A * *»HOh£ 1 2 ■ 2 j »4 »6^a
TEtPt; 125091 TELEX; 232iW
52 INTERFACE AGE
CIRCLE INQUIRY NO. 20
FEBRUARY 1977
The new generation
of Diskette Drives is here
and under control.
PerSci has it- a family of diskette drives
"design-years" ahead of competitive drives -now
available in complete low cost sub-
systems for interface to 8080,
6800 and other major micro
processors.
The Highest
Performance
Diskette Drives:
PerSci diskette drives,
both single and dual
head units, offer a com-
bination of performance
features unique in the
marketplace while still
maintaining compatibility
in existing systems:
□ Voice coil positioning
for access speeds
seven times fast*
than competitive
(76 tracks in 100
□ A low power all system
reduces cost and assures high
reliability
□ Automatic electric loading simpli-
fies operation and protects media
□ Small size permits 5 single
drives or 4 dual drives to be
mounted vertically in a 19 in. rack
The Most Powerful
Diskette Drive Controller
The PerSci Model 1070 Diskette
Drive Controller puts the advanced
performance of PerSci drives to
work in microprocessor based
systems. An IBM format com-
patible, "intelligent" controller,
the Model 1070 will handle
from 1-4 drives with minimum
demand on the host system.
In fact, with addition of a power supply and
keyboard to the PerSci subsystem, the user can
perform many floppy disk
routines without additional
hardware or software.
Controller features include:
□ Interface to most micro-
processors including 8080,
6800 & Z80
□ Internal disk operating
software including IBM
formatting
□ RS232 interface option
□ Rom options allowing
copy data transfer between
diskettes and data transfer
between RS232 interface and
diskette
An Economical Diskette
Drive Subsystem
A complete subsystem including a
single diskette drive (Model 70), the
Model 1070 controller with interface and
_ - - \ a controller-to-disk-drive cable is available
in single units for $1,195. For double
capacity, a dual diskette drive (Model
270) subsystem is available for $1,495.
OEM discounts available.
Don't settle for yesterdays diskette
drive. Get the new generation
under control from PerSci,
4087 Glencoe Avenue,
Marina Del Rey, CA 90291
(213) 822-7545.
PerSci
1
Peripherals a
Generation Ahead.
FEBRUARY 1977
CIRCLE INQUIRY NO. 24
INTERFACE AGE 53
II
>TM
MICROCOMPUTING FOR HOME AND THE SMALL BUSINESSMAN
The professional publication bringing microcomputing technology to the hobbyist, small businessman, educator,
engineer and student. Every issue edited to bring technology and people together in the simplest manner.
INTERFACE AGE is packed with
HARDWARE ARTICLES — Product profiles, comparisons,
applications, modifications and construction pro-
jects.
SOFTWARE ARTICLES — Microcomputer development
software, short software routines, application
software, off-line software storage formats, software
communication standards and access to the
microcomputer software depository for all INTER-
FACE AGE readers.
TUTORIALS — Fundamentals of micro processors, basics for
microcomputing, professional to technical transition
information, understanding software, elementary
math for computing.
• NEW PRODUCTS — Manufacturer profiles and latest
product releases.
USER COMMUNICATION - UPDATE - devoted to
club and organization announcements
and activities. — LETTERS TO THE
EDITOR — Reader forum for expression
of opinions and feedback on articles and
features.
MICRO-MARKET/FIFO FLEA MARKET - Low cost/no
cost advertising for the new
marketeer/garage sale enthusiast.
If you need to know how to get started in microcomputing or need the valuable software once
your system is completed then INTERFACE AGE is a must for you.
Don't Delay — Subscribe Today!
i 1
1 INTERFACE AGE MAGAZINE 1
P.O. Box 1234 12 Monthly Issues:
1 Cerritos, CA. 90701 $10 U.S., $12 Can./Mex., I
I $18 International ,
□ CHECK □ MONEY ORDER
Name
Address-
City _ „ ,_ State Zip
I Country
MAKE CHECK PAYABLE TO: INTERFACE AGE MAGAZINE
54 INTERFACE AGE FEBRUARY 1977
:or most people the Z-80 chip signaled
he start of another learning curve in
nicroprocessor technology while others
mjoyed the start of a whole new micro-
omputer revolution
CARD OF THE MONTH THE TDL ZPU
By Roger Edelson, Hardware Editor
To be fair, this article should have run before my
discussion of the other available S-100 bus compat-
ible Z-80 CPU card. The reason is simple: TDL (Tech-
nical Design Labs) were out first with their Z-80 CPU
board. So this month I will cover the Z-80 CPU card
from TDL. I don't know which company, TDL or Sony
owns the rights to the name ZPU, nor is my intention
to compare the two boards, rather to confine myself to
a discussion of the TDL entry. I must say, however,
that either board would be a worthwhile addition to
your computer.
Let us take a look at the TDL ZPU™ kit before we
cover operation and design. The kit is particularly easy
to build. My son who is fourteen years of age took
about three hours - with time off for ice cream. The
board worked the first time out. Assembly instructions
are excellent, but please read the paragraph on the
identification of the electrolytic capacitor lead polarity.
One of the capacitors, C 20, is very strange. It has a
single big black dot located in the middle of the two
leads. When the dot faces you, the right lead is the
positive one. Further on this subject, let me voice a
minor gripe: the capacitor is not shown on the sche-
matic diagram. In fact none of the regulator com-
ponents is shown. This makes troubleshooting this
area somewhat difficult. I hope TDL redraws their
schematic to include these components.
The printed circuit board is high quality with gold-
plated edge-connector pins. Sockets are provided for all
integrated circuits. A nice touch is the numbering of
every tenth pin on the front of the board. The solder
masking is generally adequate, but there were some
outages on the board front. Where these occurred
under a silk-screened component identification, the
printing did not take. It is then difficult to read the com-
ponent identification. With mine most of the resistor
numbers on the left side of the board vanished and
some identification on the top was also lost. That was
a minor problem, but does not detract from the board's
construction nor use.
The assembly of the board is straightforward and
easy. The assembly instructions contain a particularly
good section on the proper procedure for board
cleaning. The card is designed to be compatible with
the S-100 bus structure or the Altair/IMSAI front
panel interconnection. Separate jacks are provided to
accommodate the front panel connectors of either
computer, and the ZPU user may elect to install either
one or both during assembly.
Now let us take a look at the general board design
and the specific features provided by TDL. As stated
previously, the TDL ZPU '* is S-100 bus compatible. In
order to maintain this compatibility the ZPU must gen-
erate a number of bus signals not normally produced
by the Z-80. The ZPU card produces these signals by
logical interaction and gating of the Z-80's status
signals and the clock lines.
The most important status generated by the Z-80 are:
1 . Memory request
2. I/O Request
3. Read
4. Write
5. M1
FEBRUARY 1977
INTERFACE AGE 55
The five signals, properly gated, are used in con-
junction with the clock to generate all of the required
control timing. To follow the description of the logical
design of the ZPU, please refer to the schematic of the
ZPU card shown on Figure 1.
The Z-80, unlike the 8080, outputs continuous
status information whereas the 8080 information is
strobed into an 8 bit latch (usually an 8212) during
"Sync"time. Consequently, the Z-80 generates no sync
pulse. In order to retain the Altair Bus structure, a
"psuedo-sync pulse" was created.
Specifically, PSYNC is generated by gating I/O re-
quest and memory request thru a NAND gate (IC21)
whose output goes to the input of a 74LS74 (IC16)
which is clocked by the Phase 2 signal. PSYNC is taken
off of the Q of IC16.
A wait is accomplished by gating the PRDY signal
and forcing a low into the wait control line of the Z-80.
In addition, an extra PRDY line has been made avail-
able which may be jumpered to any unused bus line for
future applications. When not in use these lines should
be jumpered together, (pins # 3 and #5 of I C 1 7) The
wait signal is initiated by the coincidence of the clock
pulse with the pulling down of any of the 3 ready lines
(PRDY, XRDY. LRDY).
The interrupts enabled flag is not provided on the Z-
80. This has been simulated by the use of an 8 input
NAND gate (IC14) and some decode gating (IC17)
feeding a set-reset flip flop ( I C 1 8) to provide the user
with a proper indication when the interrupts are
enabled.
The interrupt pin of the Z-80 is handled in exactly
the same fashion as that of the 8080, coming to the
same bus pin. However, the non-maskable interrupt
pin of the Z-80, which represents a significant feature
of the Z-80 is brought out to a pull-up resistor, and may
be jumpered to pin #4 on the bus, VI0, the highest
priority interrupt line. Thus configuring the Z-80 into
the Altair Bus does not detract from this Z-80 feature.
The SSTACK status signal of the 8080 is not gener-
°o I
IC3 ^ IC4 ^ ICS w ICS
COPYRIGHT 1976 by TECHNICAL DESIGN LABS INC.
JDL
18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50
68 70 72 74 76 78 80 82 84 86 88 90 92 94 96 98 100
By Courtesy and permission of TDL
56 INTERFACE AGE
FEBRUARY 1977
IF YOU'RE STILL PLAYING GAMES
IT'S BECAUSE YOU HAVEN'T SEEN
OUR SOFTWARE LIBRARY
VOLUME ONE
Part 1
BOOKKEEPING
Bond
Building
Compound
Cyclic
Decision 1
Decision 2
Depreciation
Efficient
Flow
Installment
Interest
Investments
Mortgage
Optimize
Order
Pert Tree
Rate
Returnl
Return 2
Schedule 1
Part 2
GAMES
Animals Four
Astronaut
Bagel
Bio Cycle
Cannons
Checkers
Craps
Dogfight
Golf
Judy
Line Up
Pony
Roulette
Sky Diver
Tank
Teach Me
PICTURES
A. Newman
J.F.K.
Linus
Ms. Santa
Nixon
Noel Noel
Nude
Peace
Policeman
Santa's Sleigh
Snoopy
Virgin
VOLUME TWO
Part 3
MATH & ENGINEERING
Beam
Conv.
Filter
Fit
Integration 1
Integration 2
Intensity
Lola
Macro
Max. Min.
Navaid
Optical
Planet
PSD
Rand 1
Rand 2
This BASIC SOFTWARE LIBRARY is a complete do it yourself kit.
Written in everybodys BASIC immediately executable in ANY computer
with at least 4K, no other peripherals needed. Over 1000 pages of source
codes, descriptions and instructions.
* * Also available at most computer stores * *
This library is the most comprehensive work done of its kind to date. There are
other software books on the market today but they are dedicated to computer
games. The intention of this work is to allow the average individual the capability to
easily perform useful and productive tasks with a computer. All of the programs
contained within this Library have been thoroughly tested and executed on several
systems. Included with each program is a description of the program, a list of
potential users, instructions for execution and possible limitations that may arise
when running it on various systems. Listed in the limitations section is the amount
of memory that is required to store and execute the program in K Bytes.
Your Library la Waiting
The much requested Volumes III & IV are ready. If you already have Volumes I
and II you'll want to add these to your set. With the addition of Volume IV there is
no reason why anyone who even THINKS of using a computer can't own their own
SOFTWARE LIBRARY. You can start yours for less than $10 plus postage and
handling. These programs are IMMEDIA TEL Y executable in ANY computer with at
least 4K. The entire Library is 1000 pages long, chocked Full of Program source
code, instructions, conversions, memory requirements, examples and much
more. ALL are written in compatibleBASlC executable in 4K MITS, SPHERE, IMS,
SWTPC, PDP, etc. BASIC compilers available for 8080 & 6800 under $10
elsewhere.
VOLUME I &
VOLUME III
VOLUME IV
— $24.95 each
— $39.95 each
— $ 9.95 each
add $1.50 per volume for postage and handling. 10% discounts on purchases of
any three (3) volumes.
Volume discounts are available to qualified users & dealers.
Personal checks — allow 4 weeks for shipping. Pricing subject to change without
notice. If air mail shipping desired add $3 per volume to price, Continental U.S.
only. Foreign orders add $8foreach volume.
£J) SCIENTIFIC RESEARCH
1712-1 FARMINGTON COURT
CROFTON, MD 21114
PHONES ORDERS CALL
(800) 638-9194
INFORMATION and MARYLAND RESIDENTS
CALL (301) 721-1148
{Volume 2 gon'tj
Solve
Sphere Trian
Stars
Track
Triangle
Variable
Vector
Part 4
PLOTTING & STAT
Binomial
Chi-Sq.
Coeff
Confidence 1
Confidence 2
Correlations
Curve
Differences
Dual Plot
Exp Distri
Least Squares
Paired
Plot
Plotpts
Polynomial Fit
Regression
Stat 1
Stat 2
T-Distribution
Unpaired
Variance 1
Variance 2
XY
APPENDIX A
BASIC STATEMENT DEF
VOLUME THREE
Part 5
ADVANCED BUSINESS
Billing
Inventory
Payroll
Risk
Schedule 2
Shipping
Stocks
Switch
VOLUME FOUR
GENERAL PURPOSE
PROGRAMS
Bingo
Bonds
Bull
Enterprise
Football
Funds 1
Funds 2
Go-Moku
Jack
Life
Loans
Mazes
Poker
Popul
Profits
Qubic
Rates
Retire
Savings
SBA
Tic-Tac-Toe
FEBRUARY 1977
CIRCLE INQUIRY NO. 53
INTERFACE AGE 57
yyyyy yyyyy
uuuuuo
r
Dumb vs. Smart
It isn't exactly a fair contest.
Their ADM- 3 CRT terminal kit against our
IQ 120,
While they may have some good reasons for
calling theirs dumb, we've got many good reasons
for calling ours smart.
For instance, the IQ 1 20 gives you upline,
tab, home, and absolute cursor control— in
addition to the usual forespace, backspace, down-
line, new line and return.
And besides full or half duplex conversation
mode, IQ 120 provides block mode so you can
transmit a line or a page at a time.
Of the two, only IQ 120 has field protection to
prevent inadvertent overtyping of designated
information.
Plus an autorepeat feature that lets you repeat
a character over and over without typing it over
and over.
What's more, the IQ 120 comes with 73 keys
instead of 59, including a numeric pad. And it has
15 switch selectable baud rates instead of 11.
Other than that, they're pretty evenly matched.
Each has a 12" CRT with 80 X 12 format
and a capability of 80 X 24, 64 ASCII set standard,
and R&232 interface.
At only $995, the smart money is on IQ 1 20,
Contact SOROC Technology Inc., 3074 E.
Mirafoma Ave., Anaheim, CA 92806. Phone {714)
630-2232, or one of their authorized distributors.
Calif, residents include 6% sales tax.
Terms: FOB origin.
TECHNOLOGY, INC,
FEBRUARY 1977
CIRCLE INQUIRY N0. 30
INTERFACE AGE 59
ated. Instead, the Z-80 REFRESH signal may be
jumpered out to this line for use with future dynamic
memory designs.
Processor write is generated by the Z-80, however
in this application TDL has added some additional
delay in order that the STATUS OUT or MWRITE may
be properly decoded.
Handling of the remaining control timing is straight-
forward. HALT ACK is generated by the Z-80. The
MREAD signal is a function of the Z-80 READ and
MREQ signals. STATUS OUTPUT is a function of
WRITE in conjunction with an I/O request. STATUS
INPUT is a function of a READ in conjunction with an
I/O request. PDBIN is a function of the READ signal.
The interrupt acknowledge signal is a function of a
simultaneous Ml and I/O request.
All processor signals with the exceptions of phase
one, phase two, and not clock are tri-statable thru the
normal Altair bus signal.
The ZPU card features two clocks on-board. The
first is fixed at 2MHz thru crystal control, and the
second is variable between less than 1 and greater
than 4 Mhz by means of a 20 turn trimpot.
The 2Mhz crystal controlled clock is selected by
placing a jumper between the augat pins labeled "C"
and "2M".
The variable speed clock is selected by "jumpering"
between "C" and "V". (The pins "C", "2M" and "V"
are located in area A on the ZPU card.)
The crystal oscillator is a parallel resonant circuit
using a 2Mhz crystal in conjunction with several gates
of IC24, a 4049 CMOS oscillator chip. This clock
generates CLOCK and a driving signal for a pair of one-
shots. The one-shots (IC23 — no IC number was given
on the schematic originally) comprise both halves of a
F4123 and are used to generate 01 and 02 clock
signals. This is not a bad way to produce these non-
overlapping clock signals.
The variable oscillator utilizes the remaining sec-
tions of IC24 in a free-running Oscillator whose fre-
quency is controlled by a precision RC network, and
the frequency may be varied by adjusting R33, a 20K
20 turn trimpot. The variable oscillator presents phase
one and two to the bus. CLOCK is always a function of
the crystal oscillator and is always maintained at 2'MHz
by that clock so that peripheral cards may be made to
operate correctly regardless of processor speed. See
the section on High-speed operation for details on this.
Regardless of which clock is selected, if the variable
clock is tuned to within 100KHz or so of the crystal,
there is a tendency for the 2 clocks to "lock in" to each
other, that is to get into a fixed resonance. The
operational effect of this is that when the variable clock
is selected in this condition, initial frequency change
either up or down will tend to be resisted until the fre-
quency "jumps" roughly 50KHz, at which point smooth
frequency adjustment mav be made.
Two augat pins (in area "B" and "C" respectively on
the board) are provided for observation of the phase
one and phase two signals. These points are test points
only and not intended for adjustment of clock speed.
Clock speed should always be measured at point C in
area A. (On my board area C was hard to find because
of the loss of silk-screened information.)
By removing the jumper choosing either of the two
on-board clocks and connecting the common pin (C) to
an external frequency source, the ZPU card may be syn-
chronized with another system if the user chooses.
This also makes it possible to run the processor at very
low speeds (down to DC) which on occasion can be
tremendously useful. (For example, individual T-states
may be observed on the front panel.) This is one of the
nice hardware features of the Z-80. It would facilitate
matters if a coax connector could be placed at the top
of the board to aid in bringing in this external clock.
A visual inspection of the ZPU card reveals more
buffers (8T97s or 74367s, ICs 1-10) than are usually
seen on a CPU card. This additional buffering was
necessary to reduce bus loading and to assure normal
front panel operation.
The front panels of both the Altair and the IMSAI
look at the high order addresses for information about
the I/O port number during I/O operations. This was
optional with the original designers of the 8080
systems because the I/O port number is output to both
the high and low order addresses by the 8080.
The Z-80 outputs I/O port information only to the
low order addresses. (Contents of the accumulator are
then present on the high order addresses.) Hence, in
order for the sense switches to operate normally 8 ad-
ditional buffers have been added which transfer the
lower 8 bits to the high order address lines during I/O
operations.
The normal configuration of the ZPU card is that
which enables it to operate in an Altair or IMSAI with
other peripheral boards.
The kit as supplied and the instructions as given re-
sult in a CPU card which may act as a direct replace-
ment for your current 8080 processor. There are how-
ever some options which may be exercised by the user
which take advantage of several of the Z-80 options.
These are:
1. Connecting the REFRESH signal to pin 98 on
the bus.
2. Connecting the non-maskable interrupt to vec-
tored interrupt lines.
3. Altering the processor speed.
4. Use of the duplicate PRDY line.
Pin #28 of the Z-80 outputs a RFSH signal, which
may be used to provide refresh timing for dynamic
memories. This signal may be placed on pin #98 of the
bus. Pin #98 is normally occupied by SSTACK on the
S-100 bus 8080 system, however this status indi-
cator is not terribly useful and was omitted on the Z-
80 altogether.
The RFSH signal may be picked up at area F, im-
mediately to the left of the Z-80, and "jumpered" to the
pad in area G, straight down and slightly to the left
from the Z-80. This places the signal on the bus.
When the signal is on the bus, the status light on the
front panel, labeled STACK will now stay lit when the
processor is running, indicating that the REFRESH sig-
nal is on the bus.
For the exact timing information about the RFSH
signal, see the Z-80 manual. This signal is useful to
systems utilizing dynamic RAM storage.
On the Z-80, pin 1 7 is NMI, the non-maskable inter-
rupt. To quote the Z-80 manual:
"The non maskable interrupt request line has a
higher priority than INT and is always recognized at the
60 INTERFACE AGE
FEBRUARY 1977
end of the current instruction, independent of the
status of the interrupt enable flip-flop. NMI automati-
cally forces the Z-80 CPU to restart to location 0066h ■
This powerful interrupt capability is made available
to the ZPU user.
Pin #1 7 of the Z-80 and pin #4 of the bus (VI0) are
normally both held high by pullups. Solder pads at
location H and location E may be jumpered together,
thus making the NMI available at VIO, the highest
priority vectored interrupt line.
TheZ-80 has the capability of operating from DC on
up to some maximum limit greater than 2.5MHz be-
cause of its static nature. To take full advantage of this
capability the ZPU card has been designed with a var-
iable speed clock on-board.
P #1 . an augat pin soldered to a wire represents the
phase one and two inputs to the processor. If the pin is
placed in J2, the augat pin labeled "V" in area A, then
by adjusting the trimpot located above the crystal, the
frequency may be varied over a range of approxi-
mately 3 MHz.
Normally, when one is reducing the speeds, simply
turning the speed down is sufficient, and no problems
will be encountered. For individuals whose systems
may currently be marginal at 2MHz. reducing the
processor speed may well greatly increase reliability of
the system. Some marginal memories may operate
with no wait states if the clock is set at about 1 .5 MHz.
When speed is increased it is sometimes necessary
to readjust the timing of the 74123 for stable oper-
ation. This RC network (R36 and C26) effects the
phase one and phase two relationships, which be-
come more critical as processor speed is increased.
The duplicate PRDY line was included in order to
facilitate operation with the Altair 8800B. or for any
other use the user might dream up.
The extra PRDY line comes off of IC1 7, area D. im-
mediately to the left of the IC has 2 pads which are
normally jumpered together. If one wishes to use the
extra PRDY line, remove the jumper, and take the
PRDY signal off of pin #3, the top of the two pads.
The 8800B requires 2 additional RDY lines. XRDY2
is on bus line #12. If operation with the 8800B is de-
sired, jumper the additional RDY line on the ZPU to
this bus pin. The other RDY line is FRDY. which is pin
#58 on the bus. The user may use this line as he
wishes.
The Z-80 unlike the 8080 does not necessarily stop
on an M 1 state. In order to operate the front panel, the
processor must, however, be in the M 1 state. TDL has
decided to omit additional circuitry which would force
the Z-80 to halt at M 1 . Therefore when operating in
single-step mode it is necessary to make sure that you
step the processor to an M 1 state and then operate the
front panel.
The Z-80 chip itself is guaranteed to operate up to
2.5 MHz. Most Z-80's appear to operate in the neigh-
borhood of 3MHz and some will operate at 4MHz. TDL
has designed the ZPU board to operate reliably at clock
speeds up to 4MHz. The ZPU manual contains an ex-
cellent section on high speed operation of the ZPU,
including a simple procedure for adjusting the speed of
the processor using the TDL SPU to its maximum.
It is important to note that although the system
CLOCK line is maintained at 2 MHz regardless of
processor speed, some boards use 01 or 02 for their
FEBRUARY 1977
SUPER JOLT features TINY BASIC.
ASSEMBLER and DEBUGGER ROMs on board!
READY TO RUN IMMEDIATELY' CONNECT
THIS CARD TO MOST ANY TERMINAL AND
YOU'VE GOT ALL THE MICROCOMPUTER
HARDWARE AND SOFTWARE PROGRAMS
YOU MAY EVER WANT.
BE .
ON ONE
SINGLE
41/4" x 7" PC
CARD YOU
GET ALL
THIS:
H M if i;:
•: w: , ■ £1 ;+ till -J
FULLY ASSEMBLED AND TESTED
• 8-bit 6502 processor • 1.024-byte static RAM • 3?-bidirec-
tional, programmable I/O lines • 1 MHz crystal controlled clock
• interval timer • 4 interrupts, including timer and non-maskable
• 3 serial interfaces 20 mA current loop. RS 232 and TTL • 5.120
bytes resident ROM software including a single pass symbolic
assembler, a TINY RASlC and a Debug Monitor
AVAILABLE NOW. $375 without assembler and
TINY BASIC ROMs, $575 with. ORDER DIRECT
or at participating computer stores. Other sys-
tems, cards and kits also available from $96.
MICROCOMPUTER ASSOCIATES. INC.
2589 Scott Blvd.. Santa Clara 95050
r.mr.iF iNnniRY iun i?
MORE POWER TO
YOUR ALTAIR*
12 AMPS @ 8v. (nominal)
2 AMPS (a) ±16v.
At any line voltage from:
90 to 140 volts.
Installs easily inside any Altair* 8800 or
8800a.
Over voltage and over current protected.
Conservatively designed and specified.
only $90.00
postpaid in the U.S.A.
California residents add
$5.40 sales tax.
PARASITIC ENGINEERING
PO BOX 6314
ALBANY CA 94706
* Altair is a trademark of M ITS Inc.
CIRCLE INQUIRY NO. 22
INTERFACE AGE 61
timing. These boards will not operate correctly when
the processor timing is altered. In order to fix this
problem, simply cut the clock trace on the non-
operating board (from 02 or 02 and jumper it to the
CLOCK line.) I have done this routinely on all my I/O
boards so that I may substitute either the ZPU or the
CPU card at will.
The TDL ZPU manual contains a section on com-
patibility. Bear in mind the fact that there are two types
of compatibility, hardware and software. In general,
with the exception of the SSTACK signal and the pre-
viously mentioned single-step problem, hardware
compatibility between the TDL ZPU and the S-100
CPU has been achieved. The front panel of your sys-
tem will operate in its normal fashion with all switches
serving their normal function.
The Z-80 is 100% machine code compatible with
the 8080's seventy-eight instructions. Hence standard
8080 software will run without modification on the Z-
80. However, if you are using software controlled tim-
ing by means of the number of machine cycles neces-
sary to complete a loop. 100% compatibility will not
exist. The problem is inherent in the Z-80. The archi-
tecture of the Z-80 is more efficient than that of the
8080. In its design many instructions of the 8080 -
while having the same machine code, have fewer "T-
states": thus the instruction is executed faster in real
time.
Obviously where the real time length of a timing
loop is controlled by software, the program will have to
be rewritten to adjust for the higher realtime exe-
cution speed of the Z-80. This is true even if both the
8080 and the Z-80 are running at exactly 2M Hz. In the
benchmark programs the Z-80 running only the 8080
instruction set has been found to be about 10% faster
even while being maintained at 2MHz clock speed.
TDL notes that almost all 8080 languages run with-
out a hitch on the TDL ZPU. The sole exception is
Altair Basic. This Basic has as part of its routines
several occasions where the parity flag is checked as
part of the function. In the Z-80 the parity flag in-
dicates OVERFLOW and not parity during math
routines. As a result Altair Basic will not run on the Z-
80. However, the structure of the Basic language does
not require this use of the parity flag; it was used to
reduce program space by several bytes. It therefore
can be patched by those who wish to do so. An attrac-
tive alternative would be to procure TDL's 8K Basic
which is Altair compatible and which contains a large
number of exclusive and desirable features. Another
solution would be to buy one of the Z-80 Basics now
available which provide operational features. They are
not, however, 8080 compatible.
The ease of assembly, low cost, and special features
of the TDL ZPU make it a good alternative to the stan-
dard CPU card. In addition TDL's ZPU manual is very
comprehensive and the Zilog Z-80 is also included.
TDL also provides a listing and paper tape of their ZAP
monitor.
The ZAP Monitor is a IK version of TDL's 2K
ZAPPLE Monitor. It is relocatable (can be placed
anywhere in memory), expandable ("modules" of ad-
ditional commands can be tacked on at the end, like
cars on a freight train.), and quite powerful as a system
executive.
IBT-1
Prices
FOB
St Louis
BankAmericard
&
Mastercharge
ITies flf f ordahla WfH Tsrmhal
$525 complete with high resolution 9" monitor $400 without-
Horizontal cursor control and bell $50 ■ INCLUDED FEATURES-
■ 64 characters by 16 lines
■Auto Scrolling
■Underline Cursor
■RS232C or Current Loop
■Data Rates of 110, 300, 600,
1200, 2400, 4800, and 9600
baud are jumper selectable
■All osci I lators ( horiz., vert.,
baud rate, and dotsize are
crystal controlled
The ACT-1 is a complete tele-
type replacement compatible
with any processor which supports a serial 1/0 port
Completely assembled and dynamically tested.
■Utfr- VIDEO TERMINAL BOARD- $250 - The same circuitry as used in the
*>mvm ACT-1 on a single 8l/2"xH" board. The VTB is assembled,tested and
comes complete with power supply. Add your own parallel data keyboard and
monitor to produce a complete serial I/O video terminal. Available - Dec. 1 ■
MICRO-TERM INC. P.O. BOX 9387 ST. LOUIS, MO. 63117^(314) 645-3656
62 INTERFACE AGE
CIRCLE INQUIRY NO. 13
FEBRUARY 1977
The expandable feature should be of great interest
to the user. Since it is designed in a modular fashion,
and since the ZAPPLE is its direct parent, this monitor
features tremendous expandability - either of routines
generated by the user, or by routines provided by
Technical Design Labs. Several "modules" which will
be of great interest include powerful "breakpoint",
"search" and "register display" commands.
For only $269.00 the TDL ZPU represents a very
nice low cost means to enhance your S-100 bus
system.
(16)
ZPU PARTS LIST
IC 1 to 10
IC 11, 12,20
IC 13, 15, 19
IC 14
IC 16
IC 17
IC 18,21,22
IC 23
IC 24
IC 25
IC 26
R 1 to 10
R 12 to 20
R 30
R 11,31
R 21
R 22 to 29
R 32
R 34
R 35
R 36
R 33
C 1,2, 14
C 3 to 13
C 16, 18, 19
C 15, 17
C20
C 21, 24
C 27 to 31
C 22
C 23
C 25
C 26
8T97 or 74367
74LS02
74LS04
74LS30
74LS74
74LS10
74LS00
74123
4049
Z-80
7805
1 K, 5%, Brown, Black, Red, Gold
1 K, 5%, Brown, Black, Red, Gold
1 K, 5%, Brown, Black, Red, Gold
100 ohm, 5%, Brown, Black,
Brown, Gold
47 ohm, 5%, Yellow, Violet,
Black, Gold
4.7 K, 5%, Yellow, Violet, Red,
Gold
4.7K, 5% Yellow, Violet, Red,
Gold
3.3K, 5%, Orange, Orange, Red,
Gold
10K, 5%, Brown, Black. Orange,
Gold
12K, 5%, Brown, Red, Orange,
Gold
20K, 20 turn trimpot
47Mf, 25V, dipped tantalum
electrolytic
.1 Mf Disc Ceramic
.1 Mf Disc Ceramic
.001 Mf Disc Ceramic
33Mf, 25V dipped tantalum
electrolytic
.1 Mf Disc Ceramic
.1 Mf Disc Ceramic
10Pf Disc Ceramic
6 Pf Disc Ceramic
27 Pf Disc Ceramic
47 Pf Disc Ceramic
Y1
J1 A
J1 B
J3,4, 5, 6
P1
1 Heatsink
1 ea. 6/32 x 5/16'
1 ZPU PC board
12
12
1
Miscellaneous
6"
5'
1
1
1
2Mhz Crystal
10 pin molex connector
16 pin high profile DIP socket
Augat pins
Augat Pin
machine screw, lockwasher, nut
14 pin low profile IC sockets
16 pin low profile IC sockets
40 pin high profile IC socket
jumper wire
solder
Zilog Z80 CPU Technical Manual
ZPU Documentation Manual
Paper tape of the ZAP monitor
ulhe uiag
mrant it, tn-b*...
Note Tr>ese ace the aciual clock waveforms at 11
BO80 as produced by a Parasitic Engineem
Clock F.x Kit
YOUR ALTAIR* 8800
can't run well without
a correct, reliable
CP. U. clock.
A PARASITIC
ENGINEERING
clock fix kit is
guaranteed to
produced^ and(J)2
clock pulses, that
meet Intel's
specifications for the
8080. Installs easily on
your Altair* 8800 or
8800a C.P.U. board.
only $15 BankAmericard
postpaid in the U.S.A.
PARASITIC ENGINEERING
PO BOX 6314
ALBANY CA 94706
"Altair is a trademark of MITS Inc.
CIRCLE INQUIRY NO. 22
FEBRUARY 1977
INTERFACE AGE 63
COMPUTER COUPLING
ByB. D. Lichtenwalner
With a little time and diligence you
can turn that old Boudot coded
teletype into a reasonable terminal
for home computing
Recently several articles reminded us that good old
five level, Baudot coded, teletype machines could be
used with a hobby computer. With only a few pro-
gramming steps code conversion could be accom-
plished. Add a timing loop and the parallel characters
from the computer bus could be serialized; but how
about the interface to those printer magnets that re-
quire about 1 50 volts to operate effectively? Or how
about all those hams that want to link their new com-
puter to their terminal unit and get on the air with a
buffered text system, an automated answer back sys-
tem, or one of those really fancy mail box/replay sys-
tems? Here is a circuit that will allow linking teletype
loops with open circuit voltages from 100 to 220 volts
to your computer without any danger of getting high
potential voltages onto the computer chassis. Also the
noisy teletype grounds are not tied to the computer
chassis. The circuit will provide both "1" and "0" level
outputs for mark, and will accept both "1" and "0"
level inputs for mark for keying the loop. Provision is al-
so made to have the output blanked for inputs gener-
ated by the coupler circuitry.
Circuit Description
Two opto-isolators are used at the heart of the cir-
cuit to isolate the loop voltages from the TTL logic
compatible interface to the computer. OP1 has the
loop current flowing thru it, and as a result turns on the
photo-transistor on the device. As a result the output
voltage on pin|J]of the OP1 is low. With the output of
OP1 low, the inverter, U1, provides a high level TTL
output at circuit output pin [T|- (Boxed Numbers relate
to the numbers used on the printed circuit board used
in this configuration.) The next section of U1 again in-
verts the signal and provides the user with a "0" level
signal when the loop is conducting, (circuit output pin
[5]). When the loop "opens" as a result of keying, or re-
ceiving a signal, if tied to a terminal unit TU, the out-
put at [4] will go low and the output of the circuit on
pin Qf] will go high. The delay components (C2 and R3)
are used as part of the circuitry to defeat the receiving
section from seeing the output from the transmitting
section and will be explained later. R2 and the light
emitting diode, LED, are used to indicate that the loop
is drawing current. It will give the user an indication
that the loop is operational, and will blink on and off
when the loop keys. It is not necessary and may be
omitted if you don't like all that flashing going on while
operating.
64 INTERFACE AGE
FEBRUARY 1977
TO TELETYPE LOOPS
The second iso-coupler, OP2. is used to key the loop
(open the circuit). Transistor TL really does the job, and
the isolator just provides power to the base to make
sure it turns on when the loop should be closed. The
circuit works like this: the light emitting diode in the
opto-coupler, OP2, is turned on by the current drawn
thru R5. This makes the phototransistor in the opto-
coupler conduct. Full loop voltage is then applied to
the base of the transistor with R9 as a current limiting
resistor. When input pin [3] of the circuit is brought to
ground the opto-coupler does not conduct, hence
removing the forward bias of transistor, T1 , and allow-
ing it to turn off. When the transistor is off the loop cur-
rent drops to the open circuit (Space) condition. It will
not quite drop to zero since the circuit does steal a bit
of power from the loop to operate. This minimum cur-
rent is determined by the open loop voltage and the
value of R9. The 33K value is great for loop open cir-
cuit voltages from 80 to 250 volts. (Range on your ma-
chine may drop some on the extreme ends of these
voltage ranges.) If you run higher voltages, increase
R9. If your loop has an open circuit voltage lower than
80 volts, decrease R9. I have used this circuit to key a
24 volt loop by reducing R9 to about 7.8 K. (Use the
highest value that produces good results.) If you want
to drive the loop with a mark = "1", connect your in-
put to pin [3]. If this is your input pin make sure that
input pin [|]is grounded. If you let TTL logic float (open
circuited) it will assume the input is in the "on" condi-
tion, and the output of U1, pin [4] will always have a
"0" level on pin \T\ of the opto-coupler. This will al-
ways make the loop run "open."
Just one more note about the circuit used in keying
the loop. Zener diode D5, is used to prevent excessive
voltages from appearing across the collector-emitter
junction of OP2. Be sure not to let it out.
The diode bridge consisting of D1-D4 is added to
make it convenient when connecting into a loop. I can
never remember which polarity is which, so for a few
cents I don't have to worry about it. R1 and C1 are
transient voltage suppressors to keep out spikes when
the loop is going from mark to space. Always a good
investment if you are a conservative circuit designer.
Construction
The components used in the project are all avail-
able from companies that advertise in this magazine.
The total cost of the project for components will be
around $1 0.00. The circuit is easy enough to lay out on
perf board, but I prefer to use printed circuits. A circuit
board is available from Scott Communications for
$3.50. Whether you wire by hand, make you own
board, or get the board from Scott the following notes
should be helpful in building and getting your unit
working. First, make sure the diodes are in the proper
direction. If you buy surplus, as I do, it is worth the
time to make sure the labeling is correct. A simple ohm
meter check is enough. Be especially careful with the
Zener. You won't hurt anything if you get it wrong, but
your loop will run "open" all the time. Also, assure
yourself that the LED is in the right direction; back-
wards will make the output circuit inoperative.
Testing/Operation
Connect your +5 Volt power supply to circuit pin [T]
ground pin [7] to your chassis and power supply. Also
for test purposes tie pin [2] to ground temporarily. Con-
nect the loop to pins [s] and [|] and turn on the loop.
The LED should glow and the loop should operate as
always. If it is running open, check that the input pin to
the OP2 (pin \T\) is about + 1 .5 volts. If it is, check R9
and check that D5 is in the right direction. When the
loop is "marking" you can check the keying circuit by
opening the ground lead at pin [T] or by shorting cir-
cuit pin [3] to ground. Both conditions should make the
circuit run "open." When the loop opens, the LED
should stop glowing. To check the output circuit, con-
nect a voltmeter from ground to circuit pin [4]. With the
loop activated, and the 5 volt power supply con-
nected, there should be a logical "1" on pin [4]. When
the loop is keyed (signal received by the TU or press-
ing a key on the TTY machine) the meter should swing
toward zero. Ungrounding pin [2] should give a solid
"0" on pin [4]. When circuit operation is verified as cor-
rect, move the test lead to pin [5]. With the loop acti-
vated, this pin will be at a logical "0," and will go posi-
tive when the loop is keyed. Again, ungrounding pin [T|
should give you a logical " 1 " on pin [5].
For some operations it is desirable not to have the
output circuit follow the input circuit. To disable the
output circuit from signals introduced into the input
circuit, connect a general purpose diode between pin
[3] and pin [§]. The anode is connected to pin [T|-
Conclusion
The circuit shown provides a simple but effective
way to isolate high voltage TTY loops from normal TTL
FEBRUARY 1977
INTERFACE AGE 65
TO SERVE YOU BETTER!
B1T5
f\J
Announces:
BITS N BYTES #2
Opening soon in San Diego!
Call (714) 422-0889 for info
Our Product Lines:
IMSAI
Lear-Siegler
Okidata
Pickles & Trout
PolyMorphic Systems
Solid State Music
Soroc
Tarbell
TDL
Vector Graphic
BITS N BYTES
679 "D" South State College Blvd.
(College Business Park)
Fullerton, CA 92631
(714) 879-8386
Hours: M-F 6 p.m. -9 p.m., Sat. 12-6 p.m.
CIRCLE INQUIRY NO. 38
TAKE ADVANTAGE OF US!
DON'T DUMP YOUR MONEY INTO THE MAILBOX-
THEN SIT AROUND AND WAIT!!
DON'T BUY FROM WANDERING MERCHANTS
WHO WON'T BE THERE WHEN YOU NEED THEM!!
A COMPUTER MART IS A PLACE WHERE THEY CARE
ABOUT YOU - AND YOUR COMPUTER EQUIPMENT.
WE SELL THE BEST LINES, AT REASONABLE PRICES.
THAT'S HOW WE MAKE OUR LIVING.
WE HELP YOU GET YOUR SYSTEM UP AND RUNNING.
WE WILL BE HERE TOMORROW
AND THE NEXT DAY!
LEASING ARRANGEMENTS NOW AVAILABLE.
THE COMPUTER MART
NEW YORK
314 Fifth Avenue,
New York, N.Y. 10001
(212)279-1048
Between 32nd and 31st
Two blocks from the
Empire State Building
Closed Monday
IMSAI, PROCESSOR TECHNOLOGY, SOUTHWEST
TECHNICAL PRODUCTS, OSI, SEALS ELECTRONICS,
DIGITAL GROUP, APPLE COMPUTERS, TARBELL, OLIVER,
CR0MEMC0, TDL, CONTINENTAL SPECIALITIES, VECTOR,
GBC VIDEO MONITORS, BOOKS, MAGAZINES, CHIPS,
SOCKETS, CONNECTORS. . . AND ALL THAT GOOD STUFF.
LONG ISLAND
2072 Front Street
East Meadow, L.I.,
New York, 11 554
(516)794-0510
Near Hempstead
Turnpike
level circuits. It has the flexibility of being keyed by
both polarity signals and also provides TTL level out-
puts with both a positive and negative signal for mark-
ing conditions. Commonly available parts and avail-
able circuit board makes this an inexpensive and easy-
to-duplicate project.
Design Note
Values for R9 are calculated as follows
R9= VOPENLOOP -3 + [R LOOP X 0.06] 0.003
The original design was done for a loop with 100
volts open circuit and an assumption that the R LOOP
was small
--BABE
COLLECTOR
7\ iO\ Ui — PIN 7-
/U\ \ZJ I lh — PIN14-
5 M 4 T
0LAA/V
PIN 1 PIN 7
PARTS LIST
Ui — 7403
Di. D2. D3, — IN 4005. 600 PIV.
1 AMP DIODE
Ds — IN 4732 — 4.7V. 1 WATT
ZENER DIODE
OPi, OP2 OPTO — COUPLER.
Tl TIL 112
LED — SMALL RED LED
SIMILIAR TO MVD 50
Ci — 0.1 /if, 600V CAP
C: — 0.01/zf. 10V CAP
Ri. Rs — 470ohms, 1A WATT R.S.
R2, R3 — 1 50ohms. Va WATT R.S.
R4 — 47ohms. 1/4 WATT
R6. Rt. Rs 4.7K,V*WATT
R<> 33K,y2WATT
Ti = 2N5655
(~*) INDICATES TERMINAL
CONNECTIONS FOR
CIRCUIT INPUT/OUTPUT
CIRCLE INQUIRY NO. 48
FIGURE 1
66 INTERFACE AGE
FEBRUARY 1977
THE 1976 COMPUTER
STORE ALL-STARS
Mike Eusey
Steve Zook
Paul Tripe
John Trotter
Jim Modecki
Dick Heiser
The most experienced computer dealers anywhere
THE COMPUTER STORE
820 Broadway
Santa Monica, Calif. 90401
Phone (213)451-0713
COMPUTER CEHTER
Authorized dealer for:
MITS, Southwest Technical, Polymorphic, Cromemco, Microterm, Oliver, TDL, Sanyo
BY POPULAR DEMAND! NEW HOURS!! TUES - F R I Noon - 8 p.m., SAT 10 a.m. - 6 p.m.
Located 2 blocks North of the Santa Monica Freeway at the Lincoln Blvd. exit
FEBRUARY 1977
CIRCLE INQUIRY NO. 47
INTERFACE AGE 67
HARDWARE REPORT
APPLYING
The Siliconix LD 130 CMOS A/D
Converter chip is admirably suited for
providing a general A/D interface with
your microprocessor.
We shall open this month's discussion of the LD 1 30 by
looking into the selection criteria for the external com-
ponents and reference voltage.
Any sampling rate from 1 to 60 samples per second
can be accommodated by simply changing the Integrator
and Oscillator Capacitors (CINT and Cosc). To find the
proper value for Cosc, refer to the clock frequency vs
Cosc curve shown in Figure 1 . The oscillator frequency
and sampling rates are related by:
lose
Sampling Rate = f . .
' ° 6 1 44
10 100 1000 10 K
COSC - OSCILLATOR CAPACITOR (pF)
Figure 1. f0SCvsc0SC
In some applications it may be desirable to drive the
OSC input with an external clock. This is a common
requirement in many data acquisition systems. The LD1 30
can be driven by an external clock capable of going to
logic high and low levels of V1 - 0.25 V and 0.25 V
respectively while sourcing or sinking 1 mA. This drive
requirement is needed to override the drive capabilities
of the CMOS oscillator input shown in Figure 2. A
standard TTL gate will not be capable of providing
this time requirement.
PROTECTION CIRCUITRY
NOT SHOWN
Figure 2. Oscillator Input
The integrator capacitor must change as a function
of frequency by means of the following relationship:
103
:INT - 77Z^F/sec
Tosc
68 INTERFACE AGE
FEBRUARY 1977
THE LD130
Minimum supply voltages for operation are v1 = 4.3 v, By Roger Edelson, Hardware Editor
V2 = -4.3 V. Although the LD130 will be functional at
these voltages, TTL compatibility can no longer be
guaranteed. Maximum voltages for functionality are
V1 = 8 V, V2 = -8 V. V1 and V2 must be matched
within 1 .5 volts of each other or a zero offset will be
created.
One of the major features offered by the CMOS LD1 30
is its very small power consumption ( 25 mW @ ± 5 V).
This power consumption, however, increases significantly
as V1 and V2 approach their maximum rated limits (60 mW
@ ±8 V). Low-power operation then dictates a lower
supply voltage.
There exists a number of power supply and board
layout problems that can lead to instability and poor
performance in the LD130 A/D system. The problems
arise from two main considerations— V1 regulation and
ground system layout.
V1 regulation becomes important to the LD130 for a
number of reasons. First, the LD130 linear stages are
powered by the same positive voltage that supplies the
logic section and, if used, a LED display. Display noise
on this supply then must be rejected by the amplifiers.
Since the LD1 30 has excellent power supply rejection
for V1 (0.6 mV change of output for a 1 V change in
this error source will be considered to be of secondary
importance.
A major consideration is the modulation of the internal
oscillator frequency by an unregulated V1 . A glance at
the Cosc vs fosc curves of Figure 1 shows that this
oscillator frequency is a strong function of Vr The V1
seen by the LD1 30, however, can carry a considerable
A.C. component when LED displays are used.
When interfacing with a microcomputer, the display
problem does not exist. Proper attention should still be
paid to grounding techniques to ensure that no logic
currents are imposed on the LD130 ground return line.
Furthermore the LD130 + 5V supply should be well
bypassed to ground and either a series diode or a regulator
should be used to provide some series resistance on the
capacitor filter. (See Figure 5)
The Auto-Zero capacitor (CAZ) is not critical and should
remain at 0.1 Mfd over the full sampling rate range. In
special cases of combinations of low sampling rates and
high ambient temperatures (not usually found in home en-
vironments) a higher value may be necessary. Capacitor
tolerance or type is not critical; standard ceramic disc
types may be used.
Capacitors CAZ and CINT should be of a type which
maintains a high insulation resistance over the temperature.
All Film Type capacitors are suitable.
The equation COUNT
VIN
V
given last
REF
The "Quantized Feedback" conversion
scheme introduced by Siliconix provides
the LD 130 with AUT0-ZER0 Auto-
Polarity from a single reference voltage.
month shows that a 2.000V reference is required to
Part II of a Series
FEBRUARY 1977
INTERFACE AGE 69
1008
1007
\ 1006
)
J 1005
3 1004
0.5 1.0 1.5 2.0 2.5
VREF - REFERENCE VOLTAGE (V)
Figure 3. Ratio Operation
+ 5V
A. CR033
Full
Vref
Scale
\ ^ 2K ohms
Adjust
^ 516K ohms
Figure 4.
Series Diode
Supply — [>|
1 0^F -J-
■ to LD 130
.01m F
Figure 5.
GND
vref O
V20-
_L_
[>1 (
0.068 jjF
-OV|N
>B3
Figure 6. Lock-Up Protection FET
achieve an output that reads directly in millivolts of analog
input (1 .000 Volts Full-Scale). Scaling the output to read
in other than volts can be achieved by adjusting VREF
according to this equation. It must be realized that the
actual LD1 30 can vary by as much as 5% of the predicted
values, so the VREF must be adjustable for proper
calibration.
Since the output of the LD1 30 is simply the ratio of the
input voltage with the reference voltage, ratio measure-
ments are natural to this system. The typical ratio operation
error of the LD1 30 is depicted in Figure 3. A lower VREF
limit of 0.5V is recommended for a stable jitter-free output.
Reference voltages less than 0.5 Volt provide an unstable
reading due to the large amount of noise inherent in the
CMOS op-amps.
The typical LD130 application as a 3 digit DVM shows
the reference voltage being developed by a current
regulator diode-resistor combination, (see Figure 4.) This
is the preferred method for creating stable low-voltage
references. The temperature compensated current
regulator diode (the electrical dual of the temperature
compensated Zener) keeps a constant current through
the series connection of metal film resistor and cermet
trimmer. A typical temperature coefficient of 50 ppM/°C
is achieved by this system— an order of magnitude
improvement over a typical low-voltage Zener (IN746,
3.3 V Zener).
The LD130 specifications limit the maximum input
current at VREF or VIN to 1 ma. In order to prevent damage
to the chip a current limiting resistor should be placed
in series with these inputs if the voltage might exceed
the supply voltage by more than 0.3V. A 250 Kr resistor
in series with pin #1 7 will offer input protection up to
250V over-voltage and accuracy would be degraded by
only 0.025%.
The LD130 has protection circuitry at all inputs and
output which prevent static damage by clamping the vol-
tage at these pins.
The E204 JFET shown in the LD130 application of
Figure 6 eliminates a power-on lock-up mode. This
condition manifests itself by a constant 007 output. If the
JFET is not used it may be necessary to recycle the
power supplies to attain normal operation. The use of the
E204 JFET reduces the maximum allowable negative
supply voltage, V2 to -5.5 V. A higher V2 supply may
be used if a higher pinch-off FET is used (E21 1 extends
V2 to -6.5V).
While both the Digit Strobe (D1 , D2, and D3) and Data
Bit (B0, B1t B2, and B3) outputs are capable of driving
1 TTL load, the maximum internal clock stability and thus
A/D stability is attained when the bit outputs sink less
than 400 A. Therefore, CMOS or low-power Schottky
TTL decoders are preferred. Standard TTL loads will not
contribute to A/D instability when an external oscillator
is used.
The interdigit blanking period allows the LD1 30 to
interface with gas discharge displays when oscillator
frequencies of 1 6 kHz or less are used.
Since the BCD data for each digit appears before and
does not change until after the digit strobe (except when
new data are loaded), interface problems such as latching
of improper codes are minimized.
The net digit duty cycle is reduced to 25% by the
interdigit blanking period. Average LED currents must be
calculated with this consideration.
70 INTERFACE AGE
FEBRUARY 1977
'avg (LED) - ZiPEAK x 0.25
Since the total inter-digit blanking time is equal to a digit
ON time, it may be used as a fourth digit strobe for
special applications.
The ranging signals (overrange and underrange) are time
multiplexed on the SIGN/UR/OR output. Demultiplexing
consists of logically ANDING this output with either the
D1 or D2 Digit Strobe output (see Figure 7). Thus:
D1 • SIGN/UR/OR = Underrange Pulse (active
high) when count < 80
D2 • SIGN/UR/OR
D3 • SIGN/UR/OR
Overrange Pulse (active
high) when count >999
Plus polarity sign
If either an underrange or overrange condition exists, the
appropriate pulse will occur once each sampling interval
during the zeroing time. This single pulse can be used
directly to step an Autoranging circuit into the next range.
Figure 8 shows the implementation of an Autoranging
System for the LD1 30.
The LD1 30 offers features useful in many data acquisition
system applications. The compact size, low parts count,
low power and BCD output of the LD130 can become
important features in the trend to complex portable
instrumentation. The integrating type "Quantized Feedback"
conversion technique gives high noise rejection properties
while offering conversion rates of up to 60 per second.
The fact that the LD1 30 offers mixed Measurement and
Zero periods suggests that high rejection to specific
noise frequencies can be obtained. While this is true,
the rather variable nature of the LD130's internal
oscillator makes it impractical to reject specific problem
frequencies (such as the A.C. line frequency). An external
oscillator can allow this maximum rejection ( 70 dB)
to be attained by providing a more precise clock
frequency. The proper oscillator frequency can be chosen
from the following relationship:
2048 f
noise
OSC
N
where N is any integer that keeps the oscillator frequency
within its prescribed limits (6kHz to 370 kHz).
The worst case Normal Mode Rejection for an untuned
system is defined by:
fr
NMRR (worst case) = -20 log
FOSC
4096 7T f •
noise
The internal latches of the LD130 can be made to hold
a reading indefinitely when a SPDT switch is added to
the circuit as shown in Figure 9. in the convert
position, the Auto-Zero Capacitor, CAZ, is connected to
the AZ input and the internal latches are updated after
each conversion. When switched to "Hold", the large
negative output of the AZ amplifier drives the Integrator
to the positive rail. Since the comparator can never go
low, the control logic retains the data from the conversion
preceding the switch change to "Hold". While the "Hold"
mode, the Auto-Zero function is inhibited. This means
that VAZ is no longer valid and that the first conversion
after returning to the "convert1' position will not be valid.
FEBRUARY 1977
clock rLnnnnnJUimoR^^
B3 J 8~
1
J
I
1 1
1
°d 1
°* I I
-I I L
M ri r—
SIGN/UR/OR II i T I
. I— I L_J I
T V
UNDERRANGE OVER RANGE
J L
Figure 7. Data Output Format (Output = 769)
10M P.
INPUT O VW-
>1.11M >101K > IDK >54CI£i
< si ? n ? >
to Ua In U
v2 O-
2. 7, 10, 15, 5
|~T_
sign um on t
Figure 8. Autoranging System
For LD130
° cazT
HOLD ♦
Figure 9. "Hold" Function
INTERFACE AGE 71
DATA VALID WHEN "0"
"O -5 V
NOTE: WHEN USING THIS CIRCUIT C)NT SHOULD S £20.
Figure 10. End-of -Conversion
Decode
Note that the AZ line (pin #16) must be switched to
-5V. Standard TTL logic can not be used in this case,
but a SPDT analog switch operating from ± 5V supplies
could be used. The Siliconix DG 300 series should pro-
vide this capability while allowing interfacing with
standard TTL logic at its control pin.
Due to the limited number of pins available on the
LD130, the internal system timing signals (M/Z, AZ) are
not available to the outside. In the instances where A/D
system timing may be needed, it may be decoded with
the circuit of Figure 10. This circuit uses the integrator
output (INT, Pin 4) to develop an End-Of-Conversion
(EOC) signal that approximates the complement of the
internal AZ signal depicted last month. The circuit can
decode these states because the integrator operates
around 0 volts during the Measurement and around -1
Volt during the Auto-Zero phase. The average value of
the integrator then is indicative of the state of the
AZ signal. The LD1 30 data are valid and remains valid as
long as the output of the EOC circuit is "0". Switching
of an analog multiplexer should occur during this time.
It is important, for the proper functioning of this circuit
over the full analog voltage range, that CINT be increased
to twice the value given by Equation 2.
Although multiplexed BCD is more generally useful,
the output of the LD130 can be demultiplexed and
presented in a parallel format as shown in Figure 1 1 .
Applications for this format include printer drive and
interface to a 12 bit data bus. Interface to a printer
would also require the presence of the End-Of-Conversion
Signal as a Print enable. The EOC decode circuit is
included in the schematic for this purpose. Multiplexed-to-
Parallel BCD conversion is accomplished by the three
CD4042 Quad latches. These CMOS ICs minimize parts
count by eliminating the need for data bit buffers.
O
-K>
ANALOG J C
INPUT]
[o-
E204
G
DATA VALI
WHEN "0'
0 A 1N914
VREF
B3
LD130
B2
V|N
Bl
ANLG
B0
GND
AZ
D3
D2
°1
INT
V2
COND
OSC
6 1 14
0.001 i -
-I
iok n
-VvV
-O v2
PARALLEL
BCD OUTPUT
DIGIT 3
(MSD)
72 INTERFACE AGE
Figure 11.3 Digit A/D with
Parallel Output
FEBRUARY 1977
The A/D- juP system is the preferred method of
handling and storing analog quantities. The cumulative
errors of analog data handling are eliminated while
powerful system functions can be achieved with a few ICs.
The LD1 30 A/D has many features important to ixP-
based systems such as:
1 . BCD Coding — The must useful format when the out-
put is to be observed by humans.
2. LSI — Keeps system complexity down.
3. Multiplexed Output — Readily interfaces 4 and 8 bit
systems.
One of the problems involved in interfacing the 4 bit m P
is that the 4 bit bus is fully taken up by the 4 BCD data
bits. Additional bits for digit markers are not available.
One solution would be to apply the digit strobes to an
additional input port thus identifying the data. This method,
shown in Figure 1 2, offers a simple hardware interface
for the LD1 30 but requires an additional input port
and a significant amount of processor time to synch up
to the non-synchronized LD1 30. Here the circuit shown
in Figure 10 is used to provide an end-of-conversion
(EOC) signal to the ju P. The m P must constantly
monitor the input port containing this signal and use the
information presented from D3, D2 and D1 to determine
which digit is present.
4 BIT pP
INPUT PORT
200 pF
JT
0,015 ^jF Z=
OSC B3
B2
B1
BO
AZ LD13°
£ t>3
D2
INT O]
4 BIT pP
INPUT PORT
-O -5 V
Figure 12. 4 Bit fiP Interface
CLOCK GENERATOR
I $T 700 kHz)
pP INPUT PORT
4- BIT
16 3 <
0 01 *F
a) Synchronized 4 Bit juP Interface
FIM 0, 00H
RAM AND ROM ADDRESS
FIM 2.60H
ADDER CONSTANT
FIM 4, DOH
TIME CONSTANTS
SRC <>
REGISTER CONTROL
CLB
CLEAR CARRY AND ACCUMULATOR
READ:
RDR
READ ROM PORT 0
ADD 2
ADD CONSTANT (6)
JNC READ
REPEAT IF D] HASN'T OCCURRED
CHANGE:
CLC
CLEAR CARRY
RDR
READ ROM PORT 0
ADD 2
ADD CONSTANT (6)
JC CHANGE
LOOK FOR FALLING EDGE
NEXT:
RDR
READ 4 BCD BITS OF
WRM
WRITE TO RAM
INC 1
INCREMENT RAM ADDRESS
SRC 0
SEND NEW RAM ADDRESS
TIME:
ISZ 5, TIME
TIME DELAY
ISZ 4, NEXT
READ NEXT DIGIT
b) Program Instructions
^ start ^
READ ROM
PORT
I BCD 9
ZHO YES >
READ DIGIT
BCD WRITE
TO RAM
INCREMENT
RAM ADDRESS
W A I T 32
INSTRUCTION
CYCLES
3 DIGITS PICKED UP
CONTINUE
c) Flow Chart
FEBRUARY 1977
Figure 13. 4 Bit fi?
INTERFACE AGE 73
The interface shown in Figure 1 3 simplifies software
and saves iiP polling time by synchronizing the LD130
to the /liP system clock. This application is designed
specifically for the INTEL 4004, 4040 iiPs. As shown in
Figure 1 3a, the \iP system clock is divided by 1 6 (by the
CO4024 counter) before driving the OSC input of the
LD1 30. The ^ output of the LD1 30 triggers the one-shot
which, in turn, forces an unallowed BCD state (1 1 xx or
> Ch) on the data bit lines— this is the cue that allows
the /iP to identify D1 time. When the unallowed BCD
state disappears, the /iP picks up the D1 data and
stores it in memory. D2 and D3 data are picked up
32 and 64 /iP machine cycles later respectively.
Since the /iP and the LD130 are synchronized by the
common clock generator. The flow chart and software
for this system are given in sections b and c of Figure 1 4.
Other counter types— 741 63 for example may also be
used as may other one-shots (741 23).
Obviously, the statement "3 Digits Picked Up" will have
to be implemented by either incrementing or decrementing
a register and checking the result. Maximum line-
frequency rejection can be an added bonus of this system
if the /a P clock oscillator frequency is chosen to reject
this specific noise frequency.
The interface shown in Figure 13 does not include
the data valid (EOC) signal. This could be added to the
system and the output logically "ANDED" with the
output of the one-shot. An alternative approach would be
to simply repeat the pickup routine a second time to
verify the data.
The 8 bit bus allows additional data markers to
accompany the BCD data to the /iP accumulator. Figure
14a shows all 8 lines taken up with 4 BCD data bits,
3 digit strobes and a data valid bit. This data interface
requires the yP to occasionally poll the input port to
determine if the data valid bit is low (input is less
H? DATA BUS
I I I I I
Q START
8 BIT INPUT PORT
p
200 pF
>3k a
_L
x
3
0.1 yF-
^1 0.015 =r
OSC
U!
y2
AZ
LD130
o2
INT
REGISTER
= 80H*
READ INPUT
PORT
1 ACC £ 80H
JUCOMPARE)
£nq YES'S »
REGISTER
■ 40H*
DATA
D1
0
0
0
0 B3
B2
B1
B0
D2
0
0
0
0 B3
B2
B1
BO
D3
0
0
0
0 B3
B2
B1
B0
a) 8 Bit fiP Interface b) Data Storage Format
Siliconix & Interface Age assumes no responsibility for cir-
cuit shown, nor do they represent or warrant that they do
not infringe any patents.
READ INPUT
PORT
T ACC ^ REGISTER
' {COMPARE}
SUBTRACT
REGISTER
FROM ACC
WRITE TO
RAM
INCREMENT
RAM ADDRESS
CLEAR
CARRY
REGISTER k. 10H
*H DENOTES HEXADECIMAL
c) Flow Chart
74 INTERFACE AGE
Figure 14. 8 Bit
FEBRUARY 1977
than 80H). When this occurs, the yP then successively
looks for the appearance of Dv D2, and D3 by
comparing with the numbers 40H, 20H, and 10 H
stored in a working Register. Each of these numbers
is consecutively subtracted from the data to yield the
3 digits of BCD data which are stored in memory (RAM)
in the format shown in Figure 14b. These digits can
then be combined into the desired format.
Some applications for the LD1 30 will now be discussed.
A simple application of the ratio measurement feature of
the LD130 would be as an angular or linear position
measuring instrument. The linear potentiometer and two
resistors, shown in Figure 1 5, are the only additional
components needed for this measurement and serve
both to provide the position to voltage conversion
(0 to 1 00%) and the tracking reference voltage. Applying
the voltage divisions from these resistors to the equation
for COUNT
The fact that the forward voltage decreases with tempera-
ture requires that the sense of the LD130 sign bit be
inverted ("0" for +, "1" for -).
The LD130 offers substantial advantages in terms of
cost, power, simplicity, and versatility to the A/D market.
This chip offers simple interfacing the juP systems
requiring few additional components and a simple
software solution.
INTERFACE AGE thanks Gary Grandbois of Siliconix,
the author of Application Note AN 76-5 "Applying the
LD130" from which much of this material is derived.
Further thanks go to Bryon McCullough, sales engineer
for Siliconix who provided the application assistance
without which the article could not have been written.
Next month we shall cover a collection of l/Cs which
should be of interest. —R.H. Edelson
Gives
2R
r1
VREF = V1^r" and<
V||\j = "^"X where X is the pot coefficient
(ranging from 0 to 1 )
then COUNT = -^(2000) 2000
V
REF
V1(2R/4R)
which gives COUNT = 1000X
Scaling to degrees, centimeters, or any specific measure-
ment unit simply involves solving for the appropriate
divider resistors using the equation for COUNT.
A digital Thermometer, reading in either °F or 0.1 °C,
can be constructed by adding the circuit shown in
Figure 23 to a basic LD130 DPM. This circuit converts
temperature to a voltage by using the temperature
dependent forward voltage of a PN junction as the sensing
element. The change in this voltage is typically -2.3 mV/°C
at room temperature and can be suitable linear if the PN
junction is biased with a constant current much greater
than the reverse saturation current.
Since the diode will have a finite voltage at either a
Celsius or Farenheit Zero, this voltage component must
be subtracted out. Figure 16 shows the temperature
sensing diode
(Base-Emitter of a 2N2222) biased with a 0 T.C. Current
regulator diode (CR033). Zeroing is achieved by summing
the currents from the CR033 and E506 diodes at the wiper
of a potentiometer.
The scaling for either Celsius or Farenheit is achieved
by adjusting VREF according to equation for COUNT.
v,
Count = 2000
V
REF
AV,
ACount = 2000
V
REF
Thus
for AT = 100 C AV|N =
AT= 1000°F AV,N =
VREF = 0.46 V for C
= 2.5 Vfor°F
-230 mV
-1.278 V
V1
2R
TO LD130
VrefINPUT
Vin INPUT
Figure 15.
v3 V
E506 ^
^ CR033
^j' LD130
1K a \
5
U "
7
Figure 16. Temperature to
Voltage Converter
FEBRUARY 1977
INTERFACE AGE 75
r|
EDA BLVD. 1
cci
NEXT TO
■ PIER 1
IMPORTS
COMPUTER
COMPONENTS
5848 SEPULVEDA BLVD.
VAN NUYS, CALIF. 91411
(213) 786-7411
HOURS
TUES. - FRI.
10 A.M to 9 P.M.
SAT. 9 to 9
SUN. 10 to 6
CLOSED
MONDAY
j SEPULV
BURBANK
BLVD.
***
* AH
HE XIDECIM A L
DISPLAY
HP 5082-7340
$7.00(1) $6.00(10) $5.00(100)
74150 IN CERAMIC DIP HOUSE NUMBER
$1.00(1) 75<t(10) 60+(100) 454(1000)
74181 IN CERAMIC DIP HOUSE NUMBER
$1.25(1) $1.00(10) 704(100) 504(1000)
74190 PRIME NATIONAL PARTS
904 (1) 804 (10) 704 (100) 604 (1000)
AMS 6002 CERAMIC DYNAMIC RAM 1Kx1
$1.00(1) 704(10) 504(100) 354(1K)
DB25's (S)$3.00 (P)$2.00 SHELLS $1.00
IMSAI 100 PIN CONNECTORS $5.00 ea.
DIP SW'S 8 POSN $2.50 7 POSN $2.25
20K SLIDE POTS (STACKPOLE 114)
504(1) 404(10) 354(100)
HPROM 1024 BY HARRIS SEMICONDUCTOR
256x4 FIELD PROGRAMMABLE ROM
THESE HAVE BEEN PROGRAMMED BUT MAY
HAVE HEAVY VIRGIN AREAS
254 EA.(1-1000) 154 EA.(1000 up)
IMSAI
18080-1 K MICROPROCESSOR KITS
RAM 4A-4 MEMORY MODULE KITS
PIC 8 PRIORITY INTERRUPT & RTC KITS
SIO 2-1 SERIAL RS232 INTERFACE KITS
PIO 4-4 4 PARRALLEL INPUT/OUTPUT PORTS
EXP 22 22SLOT MOTHERBOARD
n
i
FACTORY PRIME INTEL 2708'S
! ! 1,024 BYTE EPROM
■ ■ UV ERASEABLE
$65.00(1) $50.00(10) $40.00(100)
* KSR 33 $450. TELETYPES
* KSR 35'S FROM $500 to $1200
* ASR 33'S FROM $600 to $1 000
* ASR 35'S FROM $750 to $2500
"D" CELL
BATTERY HOLDER
654(1) 504(10) 404(100)
m
TO-3
HEAT SINK
504(1) 404(10) 354(100)
POLYMORPHIC SYSTEMS
POLY88 MICROPROCESSOR
A COMPACT, POWERFUL COMPUTER
POLY I/O PROTOBOARD
FULL BUS INTERFACE LOGIC PLUS ROOM
FOR 59-16 PIN WW SOCKETS
VTI/64 VIDEO DISPLAY DRIVER
128x48 GRAPHICS & KEYBOARD INPUT
C ROMEMCO
BYTESAVER 8K EPROM USES 2708
D+7AIO D/A A/D 5 MICROSECOND CONVERSION
TV DAZZLER COLOR TV CONTROLLER
JOYSTICKS FOR PROPORTIONAL CONTROL
^ Please add $2.00 Postage and Handling on
\ orders under $25.00. Sent UPS. Add $4.50
^ Postage and Handling on Orders under $50.00.
$10.00 MINIMUM ORDER
B of A CARD * COD * PHONE ORDERS
Bps
Sent Post Office.
76 INTERFACE AGE
California Residents Add 6% Sales Tax
CIRCLE INQUIRY NO. 45
FEBRUARY 1977
New
Products
COMPONENTS
Low Cost PROM Programmer for 2704 &
2708 PROM's
Model 2708 PROM programmer, is an in-
telligent programmer that will program all major
manufacturer's 2704 and 2708 PROM's.
The Model 2708 provides an RS232 and
20mA current loop interface as a standard fea-
ture. This allows the programmer to be used in
conjunction with all printing and CRT type
terminals, a paper tape reader/punch, or as a
peripheral to the user's computer at band rates
up to 600.
The list price of $850 makes it the lowest
cost, highest performance programmer avail-
able. Because it has it's own internal micropro-
cessor, the Model 2708 provides many features
and capabilities not available in other pro-
grammers.
1. Full editing capability allows the user to
move, alter, and store data in the programmer's
buffer memory in the user's choice of number
base, binary, octal, decimal, or hexadecimal.
2. A printing terminal can provide the user
with hard copy of the PROM data.
3. A paper tape reader can be used to input
the desired data, and a paper tape can be gen-
erated to store the PROM data for later use and/-
or modification. The paper tape may be in BNPF.
BHLF. binary, or ASCII hexadecimal format.
4. The programmer will automatically adapt
to the terminal baud rate up to 600 baud.
5. The user can modify both the pulse width
and the number of loops in programming a
PROM, when used in conjunction with a ter-
minal.
The versatility and low cost of the Shepard-
son Model 2708 make it a most attractive pro-
duct to the user of 2704's and 2708 s.
For further information contact R.C. Shepard-
son. Microsystems Inc.. 20823 Stevens Creek
Blvd.. Bldg. C4-H. Cupertino. CA 95014; (408)
257-9900.
CIRCLE INQUIRY NO. 90
7800-Type Voltage Regulators from
Signetics Feature Breakdown Rating
Guaranteed to 60 Volts
An improved series of 7800-type high voltage
regulators with a breakdown voltage rating 50%
higher than competitive units is now available
from Signetics.
The new devices, designated 78HV00. are 1
amp. three-terminal positive voltage regulators
with a guaranteed input breakdown of 60 volts.
The devices directly replace standard 40-volt
versions of 7800 regulators. The higher rating
can improve system reliability and permits larger
transients and AC line fluctuations without sys-
tem damage
The 78HV00 units are the strongest 7800-
type regulators available. With thermal shutdown
and output transistor safe-area compensation
incorporated in the monolithic package, they are
virtually indestructable in standard circuit appli-
cations. Output current with adequate heat sink-
ing is typically in excess of the specified 1 amp
rating.
The 78HV00 regulators require no external
components in fixed voltage regulator appli-
cations and offer internal thermal overload
protection. Units in the line are available with
output voltage ratings of 5, 6, 8, 12. 15. 18 and
24 volts in either TO-220 or TO-3 packages.
They are ideal for a wide range of appli-
cations, including local, on-card regulation for eli-
minating power distribution problems asso-
ciated with single-point regulation. The 78HV00
devices can also be used with external compo-
nents to obtain adjustable output voltages and
currents, or as the power pass element in pre-
cision regulators.
Operating junction temperature ranges for the
new units are available to —55 to + 1 50 degrees
C.
The 78HV00 high voltage regulators are avail-
able from stock through Signetics and its author-
ized distributors. As an example of pricing.
78HV05CU rated for 5 volts output in a TO-220
package is $1.56 in quantities, of 100-999:
1 78HV24CDA rated for 24 volts in a TO-3 pack-
age is $2.26 in the same quantities.
For further information contact Signetics. 81 1
East Argues Avenue. Sunnyvale. CA 94086;
(408) 739-7700.
CIRCLE INQUIRY NO. 91
Priority Encoders
Two eight-line-to-three-line low-power
Schottky priority encoders are now available
from Advanced Micro Devices.
The Am25LS148 performs priority decoding
from eight inputs and provides a binary
weighted code of the priority order of the inputs.
This device is available in a 16-pin package and
offers standard totem-pole outputs.
The Am25LS2513 is a gated three-state out-
put version of the Am25LS148 in a 20-pin
package. This device is particularly useful in the
design of priority interrupt systems.
Both devices are available in molded and
hermetic DIP and ceramic flat packages. Prices
for the Am25LS148 start at $1.94 in 100-piece
lots.
For further information contact Advanced
Micro Devices, Inc.. 901 Thompson Place. Sun-
nyvale. CA 94086; (408) 732-2400.
CIRCLE INQUIRY NO. 92
Keyswitches
Build custom keyboards in minutes with the
KBM series keyswitch. The model KBM is a
low-cost, long life keyboard switch ideal for use
in CRT terminals, data entry devices, hex
keypads, touch tone encoders, etc. Semi-sealed
construction means immunity to environmental
contamination and the gold crosspoint contacts
insure reliable, low bounce switching for more
than 10 million operations. Contacts are rated
at 12 volts. 1 ma. with less than 100 milliohms
contact resistance. Mounting through an easily
fabricated metal panel insures precise keycap
alignment, and the rugged 1/16" terminals
make hardwired prototypes a breeze.
A variety of keycap sizes, shapes, colors, and
legends are available.
For further information contact George Risk
Industries. Inc.. GRI Plaza. Kimball. Nebraska
69145. Telephone (308) 235-4645. TWX 910-
620-9040.
CIRCLE INQUIRY NO. 93
Smallest Coded DIP Switch
"MICRO-DIP." a ten position coded switch,
occupies only one half of a 14-pin DIP socket
and it can be mounted/connected directly to cir-
cuit boards by hand or flow soldering.
Switch settings can be made in either
direction with a screwdriver. Numbers on top of
switch indicate detent positions. MICRO-DIP
can handle loads up to 100 milliamps at 5VDC
and operate in a temperature range of —10° to
+ 60°C.
MICRO-DIP contacts are gold-plated. The
.380" x .400" x .240" high glass filled epoxy
housing provides a dust seal. Available codes in-
clude BCD complement. 1 or 2 pole 2 throw
and 1-pole 5-position repeating in design.
Priced under $1.00 in 10K quantities; 6 week
delivery for prototype units.
For further information contact EECO. 1441
East Chestnut Av.. Santa Ana, CA 92701;
Phone "Switch Products" (714) 835-6000.
CIRCLE INQUIRY NO. 94
Tl Regulators Keep
Output Voltages Constant
Texas Instruments Incorporated has just
sourced the very popular //A78M and fiA79M
series of fixed voltage regulators.
The //A78M series are positive types, in-
cluding those with nominal output voltages of
5V. 6V. BV. 12V. 15V. 20V and 24V. They are
FEBRUARY 1977
INTERFACE AGE 77
Microcomputer
Quay 80AI
does much more
with the Z-80.
This dynamite new microcomputer
system in o kit moves dato tike nothing
else on the market Pun ir alone or
plug ir into on 5100 bus Aitalr/IAASAL
For solo performance, all you need is
*an unregulated power supply and an
I I/O device. Plugged inr Quay 80AI is a
CPU, ROM, 5IO, and RAM board -run
any 5100 compatible device, QUT
MORE THAN THAT. Quay SOAI's Z-80
CPU opens challenging new areas of
personal computing,
Feorures
□ 5100 bus compatible, Plugs In one slot of
your Airoir or IMSAK
□ Z-80 w/2.5 MHz clock.
□ 1 K static BAM.
□ 512 byte (ROM) monitor, Comes up
running. Inspect, alter, dump and load
memory; ser breakpoint; jump to user
program. Handles serial I/O or keyboard
input including setting baud rate.
□ 4 UVEPROM (2706) sockets.
O Serial I/O. R5 202 and 20 ma interface,
□ Parallel keyboord input, Accepts stan-
dard ASCII keyboard.
□ UVEPROM programmer. Program 2708
type UVEPRQMs,
□ 2 phase dock and sync. Run 51 00 com-
patible peripherals.
□ 158 (nsrructions.AH 76 3080 instructions
j plus 80 new powerful instructions,
□ On board voltage regulators,
Quay 80AI in a kit is £450; factory as-
sembled, $600. Send for complete
details, Or for fast action coll 201-
681-8700.
Mosrercftarge and BonkAmerfcord (accepted: COO with
1/3 depQSir NJ. residents add 5% Mies rax. frlee does
no* indude shipping and handling.
Dealer inquiries tnvired
P.O. Dox 386, Freehold, NJ, 07728
Phone: 201-661-8700
78 INTERFACE AGE
available in the TO-220 KC package with an
operating temperature range of 0°C. to 70°C.
The /xA79M series are negative types in the
same voltage ranges. Both series are available
in the TO-220 KC package and can deliver up to
500 milliamperes of output current.
The /fA78M and ;*A79M series are inter-
changeable to the Fairchild series with the same
designation.
Prices for 100 units are as follows: /^A78M
series: $1.09 each; /*A79M series: $1.09 each.
For further information contact Texas
Instruments. Inc.. Inquiry Answering Service.
P.O. Box 5012. M/S 308, (Attn: Bulletin Nos.
DL-S 7612403 and DL-S 7612405. June
1976). Dallas. TX 75222.
CIRCLE INQUIRY NO. 95
EQUIPMENT
UC 1800 Microcomputer
The UC 1800 is completely assembled and
tested. As such, it has important design cost sav-
ing advantages to industrial users contemplat-
ing the use of microprocessors in their products.
The comprehensive instruction manual, simple
straightforward software instructions, self-con-
tained keyboard, and four digit hexadecimal dis-
play provide a package which promotes rapid
training and system development.
All users will benefit from the growth poten-
tial incorporated in the UC 1800. External bus
access allows future connection to a host of peri-
pheral devices and add-on memory which can
provide full mini-level computer power.
The user of the OEfVl version will find such
features as full military temperature range, low
power CMOS, single 3 to 15 volt supply and TTL
compatibility are decided advantages in a wide
range of product applications.
The outstanding features are: Low cost; Built-
in keyboard programming; Digital (hexadecimal)
display for address, memory contents, and I/O
port; Front panel control of Interrupt, DMA, I/O
Flag; 256 byte RAM expandable to 65.5 K bytes
RAM or ROM externally; Low power consump-
tion; Special circuit saves memory content when
unit is turned off; Single power supply; Parallel
and serial I/O data line capability; Available as
single PC board microcomputer with or without
on-board power supply for OEM applications.
The comprehensive documentation package
of 230 + pages included with the UC 1800 pro-
vides extensive tutorial material with training
aids on the theory and operation of digital com-
puters. Both hardware and software are covered.
Step by step instructions are given on program-
ming. Programs for machine checkout and appli-
cations program examples are included.
Software included with the UC 1800 con-
tains KEYBUG'". a keyboard handler and debug
program which provides powerful software tools
for generating and debugging your own pro-
grams.
A software library is available which contains
diagnostics, useful macro building block rou-
tines, and games.
Option 001 — Automatically recharged inter-
nal battery. Allows program memory to operate
for up to four hours after power failure, $22.50.
Option 002 — 120/230 VAC 50-500 Hz
input power, specify which voltage is desired.
$15.00.
Also available in kit form. $395.00.
For further information contact Infinite Incor-
porated. 1 924 Waverly Place. Melbourne. FL
32901; (305) 724-1588.
CIRCLE INQUIRY NO. 96
Designer Evaluation Kit for Signetics
8X300 Bipolar Microprocessor
An evaluation kit that allows design engineers
to evaluate the Signetics 8X300 bipolar micro-
processor for planned applications is now avail-
able from Signetics.
The single-board evaluation kit includes all the
elements a designer needs to judge the suit-
ability of the 8X300 for system applications. The
unit includes the 250-nanosecond bipolar micro-
processor CPU. four input/output (I/O) ports for
interfacing external devices, 256 bytes of work-
ing data storage. Programmable read only
memory (PROM) devices in the kit are prepro-
grammed with input/output control logic, ran-
dom access memory (RAM) control, and RAM
diagnostic programs.
The microprocessor kit. designated 8X-
300KT100SK. is intended to familiarize design
engineers with the performance advantages of
the 8X300, particularly for control and data
movement applications.
The 8X300 features a 1 3-bit address bus for
sellcting instructions from program storage, and
a separate input bus for entering 1 6-bit instruc-
tion words. With the 8X300, the entire process
of data input, shifting, processing and output is
accomplished in a single instruction cycle of 250
nanoseconds.
The board layout of the kit allows for var-
iations and expansions of the basic design. All
signals, for example, can be conveniently trans-
ferred off the board, and a wire-wrap area is pro-
vided for additions to the board circuitry. Addi-
tions may include memory, interfaces or special
circuits for specific user requirements.
The 8X300 evaluation kits are available from
stock through Signetics and its authorized distri-
butors. Unit price of the kit is $299.00.
For further information contact Signetics. 81 1
East Arques Ave.. Sunnyvale. CA 94086; (404)
739-7700.
CIRCLE INQUIRY NO. 97
Communications Processor
The 40 Series Communications Processor is
designed to perform such functions as data
concentration, channel contention, message
routing, polling control, speed and code conver-
sion, protocol conversion, and voice response.
The program is executed in nonvolatile Program-
mable Read Only Memory (PROM), and need not
be "reloaded."
FEBRUARY 1977
The basic system is self-contained on a single
card Central Control Module, including a LED
display and 10-position function switch for diag-
nostic test or system monitoring. Modular
construction permits cost-effective single-chan-
nel or multi-channel configurations, with CPU,
RAM buffer storage, PROM control firmware,
synchronous and asynchronous communication
interfaces, voice synthesizer channel modules
and optional operator's console consisting of
CRT and keypad.
Additional features include an Auto-Restart
Timer and redundant common logic and power
supplies for maximum reliability. The Voice Syn-
thesizer produces clear, natural, male or female
speech.
Normally supplied in turnkey communi-
cations controller systems complete with firm-
ware, the 40 Series is also available to OEM's
with a complete Program Development System
to facilitate firmware development. Prices start at
$1800, with delivery of 45 days ARO.
For further information contact Roger Evans,
Micom Systems Inc., 9551 Irondale Avenue,
Chatsworth, CA 9 1 3 1 1 ; (2 1 3) 882-6890, TWX
910-494-4910.
CIRCLE INQUIRY NO. 98
fxC Hardware for the OEM
Supporting M6800-based equipment
development, are chassis, card cages and a
power supply for the MICROMODULE'"
products. Two card cages are available; one
with 5 card slots, the other with 10 card slots.
Both card cages have mother boards that are
pin compatible with the MICROMODULES and
all of the EXORciser modules.
The cages can be mounted on five different
axes. The unit price of a 10-card cage is
$147.00; a 5-card cage sells for $98.00.
For further information contact Motorola
Semiconductor, Inc., P.O. Box 20912, Phoenix,
AZ 85036; (602) 244-6900.
CIRCLE INQUIRY NO. 99
Control Store Sequencer Simplifies Bipolar
Microprocessor Design
The random logic needed to implement micro-
program sequencing in bipolar microprocessors
can now be replaced by a new control store se-
quencer from Signetics. Designated 8X02. the
new unit forms a powerful microprogrammed
control section for computers, controllers or se-
quenced logic elements, when combined with
standard Read Only Memory (ROM) or Program-
mable ROM (PROM).
FEBRUARY 1977
The Signetics 8X02 is a low-power Schottky
LSI device designed for use in high-performance
microprogrammed systems. The basic function of
the 8X02 is to control the fetch sequence of
microinstructions. The unit is capable of address-
ing up to 1k words of microprogram, expand-
able to any microprogram size by conventional
paging techniques. External page registers, when
they are provided, can be controlled entirely or
partially by the microprogram.
The 1 k addressing capability is not available in
other units, nor is the 8X02 subroutine nesting
capability. The Signetics unit has a 1k address-
ing capability and a 8X02 subroutine nesting
capability. A four-way stack register file and
offers conditional nesting for branching to a sub-
routine or for automatic interrupt handling.
The 8X02 is easy to use, requiring just three
control lines for the three-bit command code,
versus from 9 to 1 8 lines for alternate units.
Control instructions include Increment, Test and
Skip, and Conditional branch to subroutine. The
8X02 uses a popular 28-pin plastic package.
The low-power Schottky process employed
for the sequencer features good performance for
both medium-scale computer applications and
controllers. Chief applications are expected to be
in central processing units (chiefly mini-
computers); peripheral controllers such as high
speed magnetic disc storage units, floppy discs
and tape drives; vector generators for all types of
CRT display terminals; and simple step con-
trollers of various kinds. The 8X02 can be used
for any system, however, that requires sequenc-
ing of instructions.
Cycle time for the 8K02 is 80 nanoseconds.
The unit operates with a +5-volt power source
with power consumption of 1000 milliwatts. The
unit is totally compatible with all bipolar TTL
logic elements.
The control sequencer architecture is shown
in the schematic. The address register consists of
ten D-type edge-triggered flip flops with a com-
mon clock. The address register can be loaded
with different address sources under control of
the three address control lines and one test in-
put line.
The four-register stack input line with a two-
bit stack pointer respond automatically to oper-
ations requiring a PUSH (write to stack register
file) or POP (read stack register file). The file is
organized as a four-word-by-ten bit matrix and
operates on a last in first out basis. The stack
pointer operates as an up/down counter.
The N8X02XL Control Store Sequencer is
available from stock through Signetics and its
authorized distributors. Pricing is about $19.45
in 100 quantities.
For further information contact Signetics, 81 1
East Arques Avenue, Sunnyvale, CA 94086;
(408) 739-7700.
CIRCLE INQUIRY NO. 100
Datac 1000 Computer,
Controller and Tutorial Card
The Datac 1000 card is available in two
configurations; tutorial and populated. The
tutorial has the folowing features: The MOS
Technology 6502 microprocessor chip; one
page of RAM (256 bytes); one-bit output latch;
8 data, 8 address and 9 control touch pads (our
method of entering data with elegance and
simplicity); 8 data and 8 address LEDs; single-
cycle operation.
Microprocessor
Quay 80MPS.
For serious
hobbyists.
Quay 80MP5 is not designed for the
casual hobbyist. Only if you're serious
about your personal computing,
should you find out about Quay
SQMPS's features, capabilities, and
options. Only if you want to break free
from hobby-class microprocessors and
enter a great new world of sophis*
fleeted computing experiences,
should you get into the Quay 8QMP5.
Features
□ Single PC boord. 16 pin dip connectors
(no costly backplane or edge con-
nectors.)
□ Z-80 CPU. 1 56 instructions, 2.5MKz clock.
□ 4K dynamic RAM, Expands to 16K on
board (Z-60 refreshes w/o loss of thru-
put).
□ 1K UVEPROM monitor, Inspect, alter,
dump, and load memory; set break-
points; trace ond single-step debugging;
handfes serial I/O.
□ 7 additional UVEPROM sockets.
□ 4 6-bft parallel I/O ports. Vectored in-
terrupt (2 Z-60 PtO's, expands to 4).
□ i socket for Z-60 4 channel counter
timer.
□ 1 UART. RS232 6 20 mo interface.
□ UVEPROM programmer (2708).
□ Fully buffered address, data and
control.
Quay 60MPS is $695, assembled and
rested, Send for complete derails. Or
for fast action, Call 201-681-8700.
Mo surcharge and OankAnwriccrrd accepted, COO wtlh
1 /0 depasir. K J. resident add 5% soles icul Price does
not Include shipping and handling,
Deafer inquiries invited.
P.O. Box 386, Freehold, N.J. 07728.
Phone: 201-681-8700
CIRCLE INQUIRY NO. 27
INTERFACE AGE 79
If you want a microcomputer
with all of these standard features • • •
• 8080 MPU (The one
withgrowing soft-
ware support)
• 1024 Byte ROM
(With maximum ca-
pacity of 4K Bytes)
• 1024 Byte RAM
(With maximum
capacity of 2K
Bytes)
•TTYSeriaM/O ,
•EIA Serial I/O
• 3 parallel !/Os
•ASCII/Baudot
terminal com-
patibility withTTY machines or video units
• Monitor having load, dump, display, insert
and go functions
• Complete with card
connectors
• Comprehensive
User's Manual, plus
Intel 8080(Jser's
Manual
• Completely
factory assembled
and tested— not
c kit
• Optional ac-
cessories: Key-
board/video
display, audio
cassette modem
interface, power supply, ROM programmer
and attractive cabinetry . . . plusmoreoptions
to follow. The HAL MCEM-8080. $375
• • .then let us send you our card.
HAL Communications Corp. has
been a leader in digital communi-
cations for over half a decade.
The MCEM-8080 microcomputer
shows just how far this leadership
has taken us... and how far it
can take you in your applications.
That's why we'd like to send
you our card— one PC
board that we feel is the
best-valued, most complete
microcomputer you can buy. For
details on the MCEM-8080, write
today. We'll also include compre-
hensive information on the HAL
DS-3000 KSR microprocessor-
based terminal, the terminal that
gives you multi-code compati-
bility, flexibility for future
changes, editing, and a
convenient, large video
display format.
HAL Communications Corp.
Box 365, 807 E. Green Street, (Irbana, Illinois 61801
Telephone (217) 367 7373
VECTORBORD® TENTH/TENTH HOLES MOUNT:
DIPS, SIPS, KLIPS, CHIPS
PINS, POSTS, POTS, PADS Save Work - Time - Money
RCs, ICs, PCs, SCs
Pattern 11 H"
- 0.7'
* # * * m
-r m m •
T28 V
Fits
.062*' If
Holes ?
8800V MICROPROCESSOR PLUGBORD
* • * • •
• • • •#
Dia.
{Component Side with Added Sockets)
Has 100 contacts on 0.1" centers, is 10" wide by 5.313"
high. Has heavy tinned back-to-back buses, over all 0. 1 "
spaced 0.042" hole pattern. Socketed models available.
WIDE SELECTION OF SIZES AND MATERIALS
TERMINALS- Complete selection of
wire wrappable and solderable push-in
terminals for 0.042"and 0.062" dia. holes
— plus wiring tools available.
MICRO-VECTORBORD® "P" - 0.042"
holes match DIP leads. Epoxy glass, or
glass composite, paper, copper clad. Also
1 /64"to 1 /1 6" thick and 1 0"max. width.
VECTORBORD "H" - For larger termi-
nals, leads. Available in epoxy glass sheets
4.8" to 8.5" wide and 8.5" to 17" long.
1/32" and 1/16" thick.
PLUGBORDS - For solder or wrap wire
construction 2.73" to 10" wide and 4.5"
to 9.6" long. With holes .1"x .1", .1"x
.2", .2"x .2", or loaded with IC sockets.
80 INTERFACE AGE
Send for complete literature
ELECTRONIC COMPANY, INC.
1 2460 Gladstone Ave., Sylmar CA 91342
(213) 365-9661 - TWX (910) 496-1539
CIRCLE INQUIRY NO. 34
is rJi mm
in 1 1 iUiwiMl
In the fully populated form the Datac 1000 is
a computer with the following features: full 16-
bit addressing; total of 1 K bytes of RAM (8x-
2111); sockets for 2K of UV ROM (2x2708) for
use as a dedicated controller; MOS Technology
6530-004 teletype I/O monitor (in ROM) plus
64 bytes of RAM plus 8-bit I/O port; complete
interface to teletype current loop or EIA RS
232; high-speed cassette interface using the
MC6850 ACIA. for storing programs;
6820/6520 PIA providing two 8-bit parallel I/O
ports; fully buffered tri-state busses; power-on
reset or restart; on-board address decoding for
expansion; ribbon connector for I/O and edge
connector for expansion.
The board is designed with capability for full
expansion as described above, and for popu-
lating to a lesser degree for use as a controller.
The Datac 1000 E fully populated card (less
EROM) is available assembled and tested with
power supply and a manual in single quan-
tities for $345.00. Availability is stock to 60
days.
For further information contact DATAC
Engineering, P.O. Box 406, Southampton, PA
18966; (609) 854-7852.
CIRCLE INQUIRY NO. 101
Precision Forty-Channel CB/RF Generator
Achieves Crystal Accuracy in Low-Cost
Unit
The RF Generator designated the Model 256
for 40 channel CB tranceiver service incor-
41571
porates features of particular benefit to CB ser-
vice technicians. Five-band frequency tuning
covers channels 1 through 40 on an expanded
tuning range for easy, precise channel selection.
Frequencies of 100 kHz through 16 MHz are
covered on the other four bands to provide all IF
requirements including: 455 kHz, 10.7 MHz. and
any other, current or future.
Precision frequency selection is accom-
plished by connecting the counter output jack to
a frequency counter for continuous monitoring.
By use of the counter output in conjunction with
a frequency counter crystal-controlled accuracy
is available without the usual high cost.
A calibrated/attenuated output control pro-
vides RF signal output of 100,000 f.i\/ down to
less than 1 jzV for receiver sensitivity checks. The
attenuated output is variable in 20 dB steps and
by a 20 dB continuously-variable control cali-
brated in microvolts.
Internal modulation at a frequency of 1kHz is
variable from 0 to 100%, calibrated at 30%.
Provision is also made for use of external modu-
lation at frequencies from 20 Hz to 10kHz
through front-panel out/in jacks. When the Audio
Output function is selected a 1 kHz audio signal
FEBRUARY 1977
is available at these same front-panel out/in
jacks.
The Hickok Model 256 CB/RF Generator is
available through Hickok distributors. Sug-
gested retail price is $199.00.
For further information contact Marketing Ser-
vices Department. Hickok Electrical Instrument
Company, 10514 Dupont Avenue, Cleveland.
Ohio 44108.
CIRCLE INQUIRY NO. 102
Teletype Mobil Cart
The TTS Cart attachment adds mobility to
any Teletype terminal. It is affixed to or removed
from any Teletype in 30 seconds. It offers hand
truck-like leverage and easy movement over
door jambs, carpet edges or even stairways.
When the terminal and stand are in the upright
operating position the wheels remain suspended
above the floor to insure fixed installation
stability.
9
The mobilized terminal may be rolled to any
desirable location with ease.
Made of cold-drawn 1" steel tubing, high-
tensile steel alloy spring clamps, 8" x 1 W ball-
bearing wheels. Size: height 38"; width 32".
Weight: 12 pounds. Single unit price: $59.50.
For further information contact TTS. 2928
Nebraska Ave.. Santa Monica, CA 90404; (213)
829-261 1.
CIRCLE INQUIRY NO. 103
Electronic 'Game-Playing' Organ
A computer-driven electronic organ that
either plays your favorite song or teaches you
how to play it has been developed.
The organ is one of three electronic "game-
playing" devices that can be operated simul-
taneously by a single computer — in this case,
a Computer Automation minicomputer, one of
the smallest on the market.
The organ is controlled by a Computer
Automation NAKED MILLI LSI-3/05. a com-
pact, general-purpose machine priced as low as
$395.
In the case of the organ-player, the NAKED
MILLI is literally easy enough for a child to
operate. For example, in order to learn how to
play a particular song, the operator presses a
start button and lights are illuminated over the
organ keys to be pressed, in timed sequence. An
automatic recording and playback feature
enables the user to hear the notes he has
played. He also has the option of simply playing
any of the pre-recorded selections by pressing
the appropriate button.
For further information contact Computer
Automation. 18651 Von Karman. Irvine. CA
92713; (714) 833-8830; TWX 910-595-1767
CIRCLE INQUIRY NO. 104
FEBRUARY 1977
"SC/MP-M" Microprocessor — Higher
Speed, Lower Power Consumption, Single
Voltage Source
Samples are now available of a new N-
channel MOS version of the "SC/MP" 8-bit
single-chip microprocessor that is twice as fast
and which uses only one-fourth as much power
as the P-channel version.
The "SC/MP-H" microprocessor has all of the
features of the older version while offering
several advantages over the P-channel device.
Power consumption of 'SC/MP-II' is less than
200 milliwatts, considerably lower than the
approximately 800 milliwatts consumed by the
earlier version and the lowest power consump-
tion of any N-channel MOS processor on the
market today. Another significant improvement
is that they have eliminated the need for two
power sources. The 'SC/MP-M' chip needs only a
single source of +5 volts for operation, which is
a great improvement over the first model which
required two power sources — a +5 volt and a
— 7 volt supply.
The speed of "SC/MP-II" is twice that of the
P-channel model. The new version takes one
microsecond to complete a microcycle. and typi-
cal instruction execution time is 5 micro-
seconds.
The "SC/MP-II" is fully compatible with its
predecessor in terms of pin configuration, object
code, and software, and with slight modifica-
tions to the crystal frequencies, it will be com-
patible with all of the "SC/MP" support equip-
ment, such as the "SC/MP KIT" in the U.S.A.,
the "SC/MP INTROKIT" in Europe, the "SC/MP
LCDS" (Low-Cost Development System), and
the "SC/MP Keyboard Kit" which eliminates the
need for a teletype machine.
The clock oscillator, which is located on the
"SC/MP-II" chip, is designed to use very
inexpensive television-type crystals of 3.58 or
4.0 megahertz. As an alternative to a crystal, the
user may drive the clock with a standard TTL
(transistor-transistor logic) timing system. In
addition to the clock, all of the inputs and out-
puts are compatible with TTL devices and can
also be easily interfaced with MOS and CMOS
circuitry.
Sample quantities of the "SC/MP-II" micro-
processor are immediately available from the fac-
tory. The price for a single sample is $1 7.76, and
production quantities of more than 2,000 will
sell for approximately the same prices as the P-
channel "SC/MP." Prices will be considerably
lower in 1977 because we will then be able to
offer the 'SC/MP-II' in a plastic package.
For further information contact National
Semiconductor. 2900 Semiconductor Drive,
Santa Clara. CA 95051 ; (408) 737-5000, TWX
910-339-9240.
CIRCLE INQUIRY NO. 105
Quad OP-AMP Flip-chip
The popular MC3503 type quad operational
amplifier is now available in flip-chip form as
well as in conventional chip form and a variety
of plastic and hermetic packages. The flip-chip
consists of a silicon chip with solder bumps (90-
10 solder on a chrome-copper-gold base) on the
geometry surface to provide easy mechanical
mounting and electrical connection.
NOW
TRY
US!
The word is getting around . . .
the Byte Shop of Pasadena is
a remarkable exception to the
rule among computer stores.
We offer a truly delightful
environment supported by
* REAL courtesy
* REAL expertise
* EXPERT service
* GREAT classes
* EIGHT demo systems
and of course, a wide variety
of low-priced computer hard-
ware, software, tools and
supplies. Come see what the
happy rumors are all about . . ,
then compare our store with
ANY other!
BYTE
ShQP
The BYTE SHOP of Pasadena
496 South Lake Avenue
Pasadena, California 91101
Telephone: (213) 684-3311
- HOURS -
Tuesday - Saturday: 12-9
Sunday: 12-5
Monday: closed
Mastercharge Bankamericard
American Express
CIRCLE INQUIRY NO. 42
INTERFACE AGE 81
Electrically the MCCF3503/3403/3303 offer
much better amplifier matching than four single
operational amplifiers. Each amplifier has char-
acteristics similar to that of the MC1741 and in
addition is designed with a Class AB output
stage which minimizes cross-over distortion.
The flip-chip is offered at the following prices
(in quantities of 100-900). MCCF3303 (-40°C
to +85°C) $2.25; MCCF3403 (0 to 70°C)
$2.50; MCCF3503 (~55°C to +125°C) $6.75.
For further information contact Linear
Marketing (602) 962-2122 or the Technical In-
formation Center. Motorola Semiconductor Pro-
ducts, Inc.. Box 20294. Phoenix, Arizona 85036.
CIRCLE INQUIRY NO. 106
Cases Enhance
Custom-Designed Instruments
This line of economical enclosures, in two
sizes and numerous attractive colors and
finishes, gives desk-top instruments an ap-
pearance contemporary with sophisticated
electronic components and systems. Designated
Cono-Cases by Vector Electronic Company, the
WA series enclosures incorporate a ten-degree
sloped front panel and an optional smoked-
plastic facing for behind-panel indicators. A
recessed rear panel protects input/output con-
nectors.
The enclosures, assembled from two
interlinked channels, allow easy access to cir-
cuits, accessories and wiring. The lower section
forms a chassis integrated with front and rear
panels. Elongated holes in the bottom and rear
panel provide superior convection cooling. The
upper section serves as top and side panels. The
WA1 enclosures are 1 1 inches wide by 8 inches
deep by 4 inches high, giving 307 cubic inches
of circuit space.
The WA2 enclosures are 14 inches wide by
11 inches deep by 4 inches high, providing a
560 cubic inch working volume. Construction of
0.062 inch (14 gauge) aluminum insures ade-
quate support for transformers, heat sinks and
other heavy components.
Cono-Cases are available with clear anodize
satin finish, or with blue or walnut grained vinyl
on the cover. Other colors available in anodize,
vinyl or paint on request.
The WA Series enclosures are priced from
$12.95 to $19.70, depending on model and
finish. They are available off-the-shelf from Vec-
tor and will be available through the firm's
distributors throughout the United States and
Canada.
For further information contact Vector
Electronic Company, 12460 Gladstone Ave..
Sylmar. CA 91342; (213) 365-9661; TWX
(910) 496-1539.
CIRCLE INQUIRY NO. 107
Low Cost Logic State Analyzer
A logic state analyzer, priced at $272,
including shipping and handling, places data
domain analysis within the reach of smaller
companies, educational institutions and hobby-
ists who previously could not afford the luxury
of this useful development and troubleshooting
technique.
The instrument, dubbed the Model 100A. is
designed to operate with an ordinary oscillo-
scope and incorporates many of the features
found on much more expensive analyzers in-
cluding: a 16-word truth table display of ONE's
and ZERO's; eight input channels with eight
corresponding trigger word switches which can
individually be set to "1," "0," or "X" (don't
care); an internal data memory for post-trigger
data collection; hexadecimal and octal formats;
and both static and dynamic display presen-
tations. These features permit the Model 100A
to be used in typical logic state analysis appli-
cations such as tracing computer program flow,
examining the contents of ROMs and other
memories, checking counter and register
operations, observing I/O sequences, and
monitoring micromemory address steps.
The Model 100A can be used directly with a
variety of logic families including TTL. Schottky,
MOS, CMOS, and DTL. Connection to the
FEBRUARY 1977
Disc/3
TURNKEY SOFTWARE SPECIALISTS
FAST
MICROPROCESSOR
IMSAI 8080 microcomputer, top o? the
line; rugged industrial quality; 28 amp
power supply; 22 slot mother board;
fully expandable to 64K; will support
floppy disk drive, terminal, audio-tape
cassette input device, 300 Ipm printer.
$659.95*
EASY
TO ASSEMBLE
Lear-Sigler ADM-3 terminal kit with
NEW DCA (direct cursor addressing)
24 lines x 80 characters; 64 ASCII
upper characters, plus punctuation and
control; 5x7 dot matrix; EIA standard
RS232C and 20mA current-loop (switch
selectable).
"$849.95* with DCA
Look to DISC/3. ..authorized distributors for IMSAI, Lear-Sigler,
Cromemco, Z-80, Centronics Data Computer, Digital Equipment
Corp., and Data General Corp. *Prices subject to change.
DISC/3 1840 Lincoln Blvd., Santa Monica, Calif. 90404
Store hours — Monday-Friday 8:30-5:30 by appointment only
Disc/3
Disc/3 (213) 451-8911
ASSEMBLED TOTAL
$1099.95 _
$999.95
RUSH ORDER FORM - or CaH
KIT*
ADM 3-Kwith DCA (24x80) $849.95
IMSAI 8080 microsystem $659.95
Californians please add sales tax
Enclosed is my □ cashiers check, □ money order, □ personal check,
□ $100 deposit for C.O.D. signature___ .
□ BankAmericard NQ
□ Master Charge NO
NAME
ADDRESS
CITY
STATE
82 INTERFACE AGE
CIRCLE INQUIRY NO. 50
system-under-test is accomplished using a
color-coded flat ribbon cable terminated in gold
plated "universal" pin connectors. These con-
nectors can be used with wire-wrap pins. IC
clips, data grabbers, or ball clips. An input data
rate in excess of 8 Megabytes/second assures
compatibility with most microprocessors and
special-purpose digital systems.
The instrument comes with a 1 00-page
manual which includes the theory of operation
of the unit and the analysis procedures for
seven common microprocessors. Also included
are sections describing production testing, field
service, and educational applications. Delivery is
stock to 30 days.
For further information contact Paratronics.
Inc., 150 Tait Avenue. Los Gatos. CA. 95030;
(408) 354-7766.
CIRCLE INQUIRY NO. 108
Math Book Bonus with
Purchase of Calculator
Anyone who purchases a TI-30 calculator
soon will receive a free bonus — a 200-page
book entitled "The Great International Math on
Keys Book" that can help high schoolers with
their math studies and others to utilize math in
everyday life applications.
At a suggested retail price of $24.95. the kit
is designed for students and others who want to
make effective use of the calculator's capa-
bilities in both classroom and home. It will be
available through a wide variety of retailers.
For high school students, the new math kit
will provide an opportunity for supplemental
studies and exercises in algebra, trigonometry,
physics, chemistry, probability and statistics.
Ways to use the calculator to perform conver-
sions are also included in the book since the
metric system is now being adopted in the
United States. Students are learning currently to
measure gallons of gas in liters and distances in
meters instead of feet or miles.
Students and others can also use the book
and calculator on home management problems.
For example, there are sample problems which
show how easy it is to determine the amount of
paint needed for a room area, quantity of fenc-
ing for yards or cement for patios. There are
also hints for smart supermarket shopping in-
cluding finding unit costs and managing a
budget at the market.
Numerous other exercises and hints cover
how to use the calculator in personal business
and finance applications. Included are such
things as credit card purchases, figuring
mortgage points, interest cost, depreciation and
foreign currency conversions.
The closing part of the book introduces the
users to some entertaining puzzles and games
they can enjoy with the calculator. Some ex-
amples are calculating biorythms. doing
crossword puzzles and just having fun with
numbers.
For further information contact Texas
Instruments. Incorporated. P.O. Box 5012,
Dallas, TX 75222; (214) 238-2481.
CIRCLE INQUIRY NO. 109
Slim Profile
The UNIVUE keyboard and instrumentation
enclosure is designed for low profile instru-
mentation and computer data entry applications.
Special design features include a welded .062
inch steel body of two piece construction for
strength and an outside removable, flush
mounting aluminum panel.
Overall size is 24"x12"x3". with front panel
size of 23"x8". The UNIVUE body is coated
with light gray lacquer type primer/surfacer to
allow virtually any type paint to be used in the
application of final finish. The UNIVUE is
shipped complete with aluminum panel, rubber
feet, and mounting hardware. Shipping weight
is 1 7 lbs., with delivery from stock. 1 -24 price is
$32.95.
For further information contact Advanced
Data Sciences. P.O. Drawer 1147. Marion OH
43302; (614) 382-7917.
CIRCLE INQUIRY NO. 110
Five New Convection-Cooled Switching
Power Supply Models
Powertec now offers five new models of the
industry's highest power density, off-the-shelf,
convection-cooled switching regulated power
supply series. Packaging density is achieved as a
result of the mechanical configuration, and
through utilization of a 40kHz switching rate -
also the industry's first.
DON'T FEEL
ABANDONED
V
IMSA!
SOUTHWEST TECH
POLYMORPHIC SYSTEMS
NATIONAL MULTIPLEX
LEAR-SIEGLER
SEALS
TARBELL
OKIDATA
SO ROC
ICOM
TDL
TDL
g EPA
i t; ■ V < JM
* y - ***** ■ - ■
XL
BVTESHDP "
fTlRlL ORDER
P.O. BOX 28106
TEMPE, ARIZONA 85282
602-894-1129
QUOTE ME YOUR DISCOUNT PRICE ON THE
FOLLOWING SYSTEM PACKAGE
COMPUTER
OPTIONS
MEMORIES
DISPLAYS.
MISC._
OTHERS.
YOUR NAME.
VISIT OUR RETAIL STORES:
813 N. SCOTTSDALE RD. 12654 N. 28th DRIVE ADDRESS
TEMPE, AZ. 85282 PHOENIX, AZ. 85029
(602)894-1129 (602)942-7300 CITY
: _
ASK FOR OUR FREE COMPUTER HOBBYIST BUYERS GUIDE
_ZIF_
FEBRUARY 1977
CIRCLE INQUIRY NO. 43 INTERFACE AGE 83
LONG ISLAND
COME SEE WHAT A "REAL"
COMPUTER STORE
LOOKS LIKE
MICROCOMPUTERS
PERIPHERALS
ACCESSORIES
IMSAI 8080
BYTE-8
SWTP MP68
CROMEMCO
PROCESSOR TECH
INTERFACES {KITS or ASSEMBLED UNITS)
MEMORY EXPANSION
COLOR TV GRAPHICS
LEAR SIEGLER ADM 3
PAPER TAPE READER
BYTE
SHOP
PROGRAMS AND SOFTWARE
VARIOUS BASICS — TINY, 4K, 8K and 12K.
FOCAL — DOS — GAMES — BUSINESS APPLICATIONS.
ALSO AVAILABLE ,
APPLE 1
MODEMS
CASSETTES
TERMINALS
FLOPPIES
DEC. WRITERS
X
4>
BUSINESS APPLICATION INQUIRES INVITED
SYSTEM DEMONSTRATIONS AND LITERATURE / MAGAZINES.
BYTE SHOP EAST, INC.
27-21 HEMPSTEAD TURNPIKE
LEVITTOWN, LONG ISLAND
(516) 731-8116
TWO BLOCKS EAST OF WANTAGH PKWY.
HOURS: TUES. thru FRIDAY 11 to 9
SATURDAY 10 to 5
CIRCLE INQUIRY NO. 44
Same day shipment. First line parts only. Factory
tested. Guaranteed money back. Quality IC's and
other components at factory prices.
INTEGRATED CIRCUITS
P.O. Box 4430N Santa Clara, CA 95054
. (408) 988-1640
74D0TTL
SN7400N
SN7402N
SN7404N
SN7410N
SN74I4N
SN7420N
SN7430N
SN7440N
SN7447N
SN74S0N
SN7473N
SN7474N
SN7475N
ELECTRONICS
DISPLAY LE0S
MJLMl CA 270 2 90
MAN3 CC .125 39
l2° MAN6640 Dual CC ,500 3 50
CA 300 1.50
CC 300 1 50
CC .300 1 25
CA 300 1.50
CA ,500 2,55
CA COO 2,25
CC .357 «
CC 500 1.00
CA 500 1,00
CC SCO 1 90
CA BOO 1,90
2,50
11
S
6.75
FND800
FN0807
m NSN33M 3 (14011 f tin
, . 7520Clalrex photocells
S3 5082-7340 Hex
CRYSTALS
1 MHi 4 50 6.5536 4 50
2 MMj 4 50 1 .8432 4 SO
4 MHt 4 25 2.097152 7 75
5 MHi 4 25 2 4576 7 50
10 MHi 4.25 3 2766 7 50
18 MHz 390 5 0688 4 50
20 MHz 3 90 5 165 4 50
32 MHz 3 90 5.7143 4 50
32768 Hz 4.00 IB 432 4.50
3 5795MHz 1 50 22 1184 4 50
VOLUME SPECIALS
1 IDJ
tuiHt] :•. raw a »
WUH CN'W 7 m in
llOM U»«fSin«lV US IS
uvir>w 1**OKl 3 74 2 jj
ixtiyb S- Dtfn i- Jo n
utih-j oxy* i » i »
«in.i lizjhSJiuv i-y.- In
Mt'fr.li 7-iwnOKiiAg ia<K ia
8K Ram ffoard Kit
■ Plug compatible with Altai r
flBOO and Imsai 3080
• 9H02APC Low power 500
ns RAMS All pans Included
with full instructions S225.00
2K EPROM Board Kit Si 35 ,00
I/O Board Kit S44.5Q
60 Hz Crystal Time
Base Kit S4+75
Converts digital clocks from
AC line frequency to crystal lime i
base. Outstanding accuracy
Kit includes: PC board.
MM5369. crystal . resistors,
capacitors and trimmer
1977 IC Update
Master Manual
Brand new. Complete IC daia
seleclor from all manufacturers.
15,000 cross references. 530
with update service thru 1977.
Domestic postage add S2.0D,
Foreign $6.00.
Not a Cheap Clock
Kit S17.45
Includes everything except
case. 2-PC boards. 6*. 50"
LED Displays, 5314 clock
chip. transformer. ajlwmpc-
nents and Full instructions.
Same clock kit with .80"
displays 522,75
Frequency Counter Kit
Covers audio, ultrasonic and
low amateur band to 5 MH;
typical Dual channel high sen-
sitivity -25 millivolts. Crystal
com rolled clock. Can be pre-
scaled lor higher Irectuency.
6*. 50" digits. Full instructions.
Less power supply. $40.00
Digital Temperature
Meter Kit
Indoor and outdoor . Automati-
cally switches hack and lorth
Beautiful. 50" LED readouts. No-
thing like il available. Needs no
addiiional parts lor complete, full
operation. Will measure - 1 00 to
■ 200 F. air or liquid. Very accu-
rate. Easy to build- S3 9. 95
COSMAC [ELP
RCA CMOS V
TERMS: $5.00 min. order U.S. Funds. Calif residents add 6% tax.
BankAmericard and Master Charge accepted.
Complete kit or parts to build
the "Ell" incL CDP 1802 and
users manual as listed in Aug.
76 Pop. Elect, minus power
supply and board. S92.0D
FREE: Send for your copy of our 1977
QUEST CATALOG. Include 130 stamp.
The new series, designated 9E. is a 250-watt
switching regulated power supply in a 2.25" x
4.94" x 15.0". 6 lb.. 3 oz. package yielding
1.4w/in3. This "low profile" package is provided
in response to an extensive survey performed
late last year by Powertec of a broad base of
power supply users. This profile allows it to fit
crosswise in a standard 5.25" Retma rack while
using only 2.25" of rack depth or it may be
mounted to the cabinet alongside, above, below,
or behind the rack drawers. Additional appli-
cations are alongside CRT's in video display ter-
minals, in the side panels of consoles, in card
cages, in briefcase mounted to portable test
equipment, or any number of other applications
that an innovative engineer can imagine,
The input voltage range for this supply is
1 15/230Vac +10/-20% with a 20mS hold-up
allowing it to work under abnormal line condi-
tions. Under "normal" ± 1 0% line conditions, this
unit will operate from 110. 1 15. 208. 220. or
230Vac nominal line voltages. Ripple and noise
is 50mV p-p, regulation is 2mV for a full 30% line
change and 0.2% for a full load change and tran-
sient response is <400//*s for recovery to 0.1%
with a maximum deviation of 250mV for a 50%
load change. Overall efficience is 80% minimum.
Standard features include remote sensing and
voltage programming as well as OVP and logic
inhibit. Options include factory installed "master-
slaving" that does not require matching masters
with slaves and allows masters and slaves to be
interchangeable. A power-fail logic output is also
optional.
The control circuitry is all new and provides
many protective features not previously offered
by any supplier. As with most other switching
regulators, protection against over-voltage, over-
current, over-temperature as well as inadequate
line voltage is provided. In addition to these there
are 5 additional proprietary internal features that
protect the supply against operating conditions
that would prove fatal to many other switchers
but ensure safe operation at 40kHz in the 9E5-
50C- 1 7. These include circuits that keep transis-
tor collector currents and transformer flux densi-
ties balanced and within design limits under all
normal and abnormal operation conditions. To
demonstrate inherent reliability, 10 units are
presently undergoing perpetual life test. Also,
every production unit is subjected to a 24-hour
burn-in. These burn-ins include repeated line,
load, short-circuit, and thermal cycling as well as
full load operation at a 40°C ambient.
This supply in unit quantities sells for $395,
which makes it one of the least expensive
84 INTERFACE AGE
CIRCLE INQUIRY NO. 60
FEBRUARY 1977
switching supplies available in this power range.
Units have been provided to Underwriters'
Laboratories for investigation and recognition per
UL478 & UL114. Units are available for
demonstration and evaluation now with produc-
tion quantities available in October.
For complete details and specifications on the
9E Series, send for the new "Contortionist" bro-
chure.
For further information contact Powertec, Inc.,
9168 De Soto Avenue. Chatsworth, CA 91311;
(213) 882-0004.
CIRCLE INQUIRY NO. 111
Prompting Desktop Programmable
Calculator
A prompting programmable desktop
calculator featuring a display that communicates
with the user has been introduced by Texas
Instruments Incorporated. The desktop SR-60
includes a printer, magnetic card reader and
more individual function keys than any other
calculator.
With its "prompting" display, an SR-60 user
can run alphanumeric programs which request
information through the 20-character display at
successive stages in a problem. The calculator
then waits for a response before continuing with
problem solving. This "dialogue" allows even a
novice to work with complicated problems im-
mediately.
The SR-60 is designed for both business and
technical operations. In business, it it capable of
many functions, including financial analysis,
long-term forecasting, and payroll. In
technology, its 46 exposed scientific functions
are immediately available for calculations, and
480 program steps, expandable to 1920 with
an optional module, are available for complex
programming.
Although it has high programming capability,
the SR-60 can also be operated easily as a
general purpose calculator. Its left-to-right
algebraic entry and 9 levels of parentheses
allow problems to be entered exactly as a user
would say them. Answers can then be dis-
played, printed, or both — at the user's option.
The wide range of keyboard functions in-
cludes trig functions, hyperbolics, powers, roots,
logs, A%, factorials and many other
mathematical functions. Degrees of accuracy
can be precisely controlled to provide in-
termediate rounding, decimal variance, and
scientific notation.
Extra functions such as conversions, random
number generation, and standard deviations are
available in pre-programmed applications
packages. The full alphabet is included in the
keyboard, which is used for making display-
prompting programs and for convenient labeling
of printout sections.
The basic calculator has 480 program steps
and 40 data memories, and retails for $1695.
The expanded memory option retails at $300.
For further information contact Texas
Instruments. Inc.. Post Office Box 5012. Dallas.
TX 75222 (Attn: SR-60).
CIRCLE INQUIRY NO. 112
LITERATURE
Useful Catalogue Free
Abbott's new 1976-1977 Industrial Power
Supply Catalog is now available, FREE.
This informative catalog has been expanded
and contains complete physical and electrical
specifications on our lines of AC to DC power
supplies and DC to AC power inverters for in-
dustrial and OEM applications. All units are high
reliability, rugged modules with built-in quality.
Prices are listed with each model with discounts
to 99 pieces shown.
For further information contact Abbott Tran-
sistor Laboratories, Inc., Industrial Products
Division, 5200 West Jefferson Boulevard, Los
Angeles, CA 90016; (213) 936-8185. Telex
69-1398.
CIRCLE INQUIRY NO. 113
^ Sunshine Computer Company is pleased ^\
to announce that we are now a representative
of The Digital Group in Southern California.
Software is available! including Basic. Assembler, Disassembler, Text/Editor, Z-80 Educator!
Z-80-SVS 1- Complete 4- Board Z-80 svslem including: 10K Z-80-SYS 2: Complete 4-L3oard Z-80 system including 1 8K
memory, 12A power supply, Standard Motherboard, Standard memory, I2A power supply, Standard Motherboard, Standard
Cabinet /kit K ,\ 7\ , < S 895,00 Cabinet,<kil). Si 095.00
Sunshine Computer Company
COME SEE OUR NEW EXPANDED OFFICES IN THE CARSON BUSINESS PARK.
|^ 20710 South Leapwood Avenue Carson, California 90749 Rich Travis ( 21 3) 830-8965 J
FEBRUARY 1977
CIRCLE INQUIRY NO. 52
INTERFACE AGE 85
WHAT COMPUTERS CAN DO
By Donald D. Spencer
Camelot Publishing Co., Inc., 1977
Paperback
Review by
Judy Scolney Robertson &
Larry Robertson
What Computers Can Do is a general
overview of the "practical applications
of the computer and how it aids people
in their everyday work." The book is
aimed at a juvenile audience. It presup-
poses no familiarity with computers on
any level and concentrates on a dis-
cussion of the various areas in which
computers are used, saying very little
about programming, design nor
electronics.
Aside from the use of an occasional
buzz word (e.g. "analog to digital,"
"transducer"). Spencer's approach is
totally non-technical. Spencer covers
numerous computer applications in
this illustrated paperback. He includes
education, banking, medicine, art. engi-
neering, music, law enforcement,
government, recreation and the media,
as well as several other areas. In ad-
dition, Chapter 2, "The Computer
Threat to Society," addresses such
current problems as privacy and privi-
leged information, the misuse of com-
puters and the effects of automation on
employment. This chapter is of par-
ticular interest to the young reader who
will soon be emerging into a computer-
dominated society.
Computers is a well- written intro-
ductory book for the preteen or
teenager with no previous exposure to
our friendly machines. However, the
book could be improved by the in-
clusion of a definition of each tech-
nical term, either as it occurs or in an
appended glossary. The illustrations,
mostly photos, are interesting, but with
the green on green printing, they are
often poorly reproduced. Replacement
of some photos with line drawings or
cartoons would have significantly
enhanced the book. This does not
prevent us, however, from recom-
mending What Computers Can Do as a fine
answer to the question, "Why do we
have to have computers?"
VOLTAGE REGULATOR HANDBOOK
THEORY AND PRACTICE
Henry Wurzburg,
with contributing authors
Bernie Montoya, Cal Lidback
and Nick Lycoudes
Motorola Inc., 1976
Price: $2.50
Paperback. Available through
Motorola distributors or by writing
directly to Motorola Semiconductor
Products Inc.
Review by
Judy Scolney Robertson &
Larry Robertson
The Voltage Regulator Handbook is a
comprehensive guide to the use and
functions of voltage regulators. Aimed
at the electrical engineer, it is still
comprehensible to the sophisticated
hobbyist with a thorough knowledge of
electronics. Written and published by
Motorola Semiconductor Products Inc.,
the Handbook relies heavily on Motorola
products in its detailed explanation of
the operation of the voltage regulator.
Motorola data sheets which are com-
plete, clear and well designed are
included in this highly technical
manual, as is an industry-wide cross
reference guide.
The need for voltage regulators is
best stated in the preface, as well as a
brief history and commentary on recent
developments in the field:
In many electronic systems,
voltage regulation is required for
certain functions. Yesterday's
voltage regulators were often
complex and expensive circuits.
Valuable time was diverted from
the major system development
effort to design the voltage regu-
lators. Today's monolithic inte-
grated circuit (IC) regulator is
easing that task. Available as a
growing variety of special-
function devices and with fixed
and adjustable voltage ranges,
the IC regulators offer design
simplification and dramatic cost
improvements.
Wurzburg, et al.. more than ade-
quately cover basic theory, selection of
regulators, circuit configuration, design
considerations, heat sinking, relia-
bility, design and layout. In addition,
special sections are devoted to trouble
shooting and design of the input
supply.
The Handbook is a totally professional
publication, easy to refer to and to use.
Additional sources are listed where
appropriate, allowing the interested
reader to find further data on the sub-
ject easily.
The Voltage Regulator Handbook is an
exceptional reference for the use of
voltage regulators. It would be a
valuable, if not vital, addition to the
technical library of anyone engaged in
the selection and use of IC voltage
regulators.
Market Your 8offware
Call or Write
Microcomputer Software Depository
2361 East Foothill Boulevard
Pasadena. California 91107
(213) 449-0616
Development Software
• 8080 DIS ASSEMBLER
Two Pass
Converts machine language code to
assembly code
Uncovers ASCII tables
Generates up to 12K labels
Prints out symbol table
Address offset print output
Object code in Intel's punched paper
tape format @ 20.00 + 1 .50 Calif, sales
tax 4- 2.00 postage. Manual @ 5.00 +
.30 Calif, sales tax + 1.50 postage.
• EPS-1 SOFTWARE DEVELOPMENT
OPERATING SYSTEM
POWERFUL 8080 ASSEMBLER-
MONITOR-TEXT EDITOR
Object code in punched paper tape or
Don Tarbell's cassette media
$30.00 + 1.80 Calif, sales tax + 1.50
postage and handling {includes manual).
DEALER INQUIRIES INVITED
Call or Write
Microcomputer Software Depository
2361 E. Foothill Boulevard
Pasadena. California 91107
(213) 449-0616
86 INTERFACE AGE
FEBRUARY 1977
The Byte Shop
reaches a new low
in microcomputers!
$349
The Byt-8. It doesn't have a nifty (and expen-
sive) front panel with lots of LED's and toggle
switches.
And we obviously don't have a big full-
color ad.
What we do have is the lowest priced
microcomputer you can buy —built around
the powerful and popular 8080A
microprocessor.
For $349, you get the complete micro-
computer card, motherboard, power supply
and chassis in kit form.
The Byt-8 S 100 bus is the same one used
by Altair, IMSAI and most others so you have
the greatest possible flexibility in choosing
memory and input/output cards.
Optional cards from the Byte Shop in-
clude 4k, 8k or 16k of Random Access
Memory, 4k or 8k of Programmable Read-
only Memory, a multiple input/output card,
a TV typewriter card and, yes, a front panel
bootstrap card, if you want the LED's and
switches.
Even the CPU is optional. We'll sell you
the chassis, motherboard and power supply
for $229, and you can choose your own
microcomputer card— a ZPU for instance?
Byt-8. It's the new low in price, but we're
aiming for a new high in flexibility, delivery
and support. See the Byt-8 at your nearest
By,eshop byte 3HDR
the affordable computer store
Stores now open in: Arizona, Phoenix. Tempe; California, Berkeley, Campbell. Fresno. Hayward. Lawndale. Long Beach. Mountain View, Palo Alto.
Pasadena. Placentia. Sacramento. San Diego. San Francisco. San Mateo. Santa Barbara, Santa Clara. Tarzana. Thousand Oaks. Walnut Creek.
Westminister; Colorado, Boulder. Englewood; Florida, Cocoa Beach. Miami; Indiana, Indianapolis; Minnesota, Eagan; New York, Levittown;
Oregon, Beaverton. Portland; Pennsylvania, Bryn Mawr; South Carolina, Columbia; Utah, Salt Lake City; Canada, Vancouver. British Columbia.
More Byte Shops are opening. Please write to Byte Incorporated, 1261 Birchwood Drive. Sunnyvale. California 940B6.
CIRCLE INQUIRY NO. 41
FEBRUARY 1977
INTERFACE AGE 87
THE BLACK
Imagine a black box. On one side is a switch, on
the other a light. The switch has two positions, up
and down. Place the switch up and the light comes on.
Place it down and the light goes off.
Figure 1
Now try to imagine what is going on inside the
box. First there might simply be two wires connect-
ing the switch to the light. There is also the possibili-
ty that the switch does not connect directly with the
light, but that it turns on a light inside to which a
trained rat responds by running over and turning on
another switch that turns on the outside light. A third
possibility is that there is a human being inside the
box who responds to an inside light in the same way
the rat does.
These three possibilities demonstrate that there is
more than one way of internally structuring a device
to perform the same input-output function. A couple
of important differences exist in these three forms.
One is speed. The wired switch turns on the light
fastest in response to the switch being thrown. The
rat is probably second in speed and the human is the
slowest.
These differences are for time and ease of change
only; the input-output function remains the same. If
one has ever used a computer system via a remote
terminal or by passing cards and printout back and
forth through a window, he cannot tell for sure
whether the program went through a computer,
whether a human figured out the answer and typed it
back, o r whether a highly trained rat responded to the
input with a pre-learned response. In analogy,
software and hardware and their in-between mixture,
firmware, perform the same logical function. Their only
difference is in speed and ease of change.
There is a second type of black box. This is one
whose output is dependent not only upon the present
input, but upon inputs which occurred in the past.
For example, assuming the black box has the property
that for every third time the switch is placed in the up
position, the light is turned on, and it turned off the
next time the switch came down. The sequence of
events inside the box might be: "The switch is up,
that's one. Now it's down. Now it's up, that's two.
Now it's down. Now it's up again, turn on the light.
Now it's down, turn the light off and start over."
Figure 3
^■9ure ^ This sequence may be viewed as a series of trans-
If the creator of the black box wanted to change formations in which the box's input-output function
the input-output function (e.g. to have the light go off changes. Initially it is a box waiting for three "switch-
when the switch is up and on when down), he would ups" to occur in order to turn on the light. Once the
face different degrees of difficulty. In the wired case, switch has been thrown up, it is a box waiting for two
he manually would have to change the connections more "switch-up's" before turning on the light. The
between the switch and the light. In the rat example, second time the switch is thrown up, it is a box
he might either place a new rat in the box, trained in needing one more "switch-up." The third time the
the opposite way, or quickly retrain the present one. switch is put up, it is a box with the light on and re-
For the human, he might simply say to him, "Okay, do quiring a single "switch-down" to turn it off.
it the other way," (being sure to specify exactly what Each of these forms represents the concept of a
is meant by "the other way"). state. For each state, the response to present and
Figure 1. Figure 2.
88 INTERFACE AGE
FEBRUARY 1977
BOX
future input differs. A state is dependent upon both
the internal arrangements of the box and all previous
inputs. A change in state may be considered as either
a reconfiguration of the internal workings of the box
or as some sort of memory (e.g. an "up-switch"
counter).
There is a third type of black box which differs
slightly from the previous ones. Suppose there was an
additional input to the box which signaled to the in-
ternal operator that it must look at the input only
when this additional input went from down to up or
up to down. At any other time, the original input
could be switched up and down and the state of the
box and the light output would not be affected. This
additional input signals the passage of time in the
sense it tells the box the time at which to look at the
other input. Thus it is commonly called a clock. Boxes
whose state changes only when the clock is toggled
(when signal goes from up to down or down to up)
are termed synchronous. Most logic is built synchro-
nously to avoid problems that occur when physical
functions and interconnections are implemented.
Figure 4
One can explore the computer using the black box
analogy in many ways, for it is nothing more than a
complex interconnection of black boxes. Inputs may
be represented by switches on a front panel, or a
keyboard, or by electrical voltages or currents. Out-
puts may be lights or printed characters or electrical
voltages or currents.
The designer of integrated circuits look at various
silicon configurations as black boxes, providing input-
output functions on a microscopic level. The logic
designer uses the integrated circuits as black boxes to
be interconnected to form a computer. The computer
user may view the entire computer as a black box
with a complex function of output versus input.-
By KENNETH PUGH
A computer user prepares a BASIC program to add
two input numbers together and to print out the sum.
He starts the computer and branches to a loader
routine. By inputting the command "Load," he con-
figures the computer into a black box that simply
reads a binary input (the BASIC interpreter) and
remembers it. By typing the input "Go," he changes
the computer into a box that interprets his typed in-
puts as BASIC statements and remembers them. By
typing "Run," he then changes his computer into a
box that takes the next two inputs, adds them, and
prints out the result.
The computer hobbyist may apply the black box
approach on several levels; he can use a micro-
processor circuit as a black box with its given input-
output function and set of states defined by its inter-
nal registers, or he may buy a pre-built computer
system and use it as a black box. He can buy a stored
program in PROM (programmable read-only memory)
and use it as a box to perform its function. Or he may
use pre-written software (as a BASIC interpreter) as a
black box.
One need not have any knowledge of an entire
computer and a BASIC interpreter to use the BASIC
language. By treating entire system as a set of black
boxes, one can select those whose internal functions
one wishes to understand and those which will be put
to use.
The modern computer makes no distinction
between instructions, which configure the device into
a different black box, and data, which is input to the
black box. Thus there is an ambiguity as to whether
the computer responds to an input by changing itself
into a different box or whether it simply remembers
the past input. In either case, it can be considered a
change in state.
Editor's note: . . . and from this series of micro-
cosmic events, our lives in the everyday mesocosm
have been irrevocably altered.
Figure 3.
#of'UP'S'
0
1
1
2
2
3
3
1
and so on
Interval
Stata
Previous
Up
Previous
Down
Figure 4.
FEBRUARY 1977
based on positive edge
triggered service
INTERFACE AGE 89
XililEDiA P^EiEnCi
TheSOROC IQ120
CURSOR CONTROL. Forespace, back-
space, up, down, new line, return, home,
tab, PLUS ABSOLUTE CURSOR AD-
DRESSING.
TRANSMISSION MODES. Conversation
(half and full Duplex) PLUS BLOCK
MODE — transmit a page at a time.
FIELD PROTECTION. Any part of the
display can be "protected" to prevent
overtyping, Protected fields are displayed
at reduced intensity.
EDITING. Clear screen, typeover, abso-
lute cursor addressing, erase to end of
page, erase to end of line, erase to end
of field.
DISPLAY FORMAT. 24 lines by 80 char
acters (1 ,920 characters).
CHARACTER SET. 96 characters total.
Upper and lower case ASC 1 1 .
KEYBOARD. 73 keys including numeric
key pad.
REPEAT KEY. 1 5 cps repeat action.
DATA RATES. Thumbwheel selectable
from 75 to 19,200 baud.
SCREEN. 12 inch rectangular CRT - P4
phosphor.
SPECIAL INTRODUCTORY PRICING
Kit $995.00
Assembled $ 1,295.00
Specials of the
Month
OAE Paper Tape Reader
(kit) $65
(assem.) $80
North Star MICRO-DISK
with Power Supply & Cabinet . .
(kit) $699
(assem.) $799
TDL ZPU Board
.... (kit) $255
(assem.) $305
Cromemco DAZZLER
(kit) $205
(assem.) $325
Selectric Terminals
$1,200.00
AT LAST!
An ASCII coded Selectric terminal
with a RS232-C interface.
Call or write us today for details.
XIMEDIA OFFERS A FULL RANGE OF PRODUCTS FOR
THE PERSONAL COMPUTER ENTHUSIAST AND THE
SMALL SYSTEM DESIGNER. LET US QUOTE ON ALL
YOUR HARDWARE AND SOFTWARE NEEDS.
OUR RETAIL STORE -THE COMPUTER ISTxrn - IS NOW
OPEN IN SAN FRANC/SCO. CALL US FOR DIRECTIONS.
XililEDiA
1290 24th Avenue . San Francisco, CA 94122
(415) 566-7472. Please call collect!
California residents add 6% sales tax. Please allow 3 weeks for delivery.
CIRCLE INQUIRY NO. 49
90 INTERFACE AGE
FEBRUARY 1977
By Robert A. Stevens
Software Editor
Software Section
ALL MICROCOMPUTER MAGAZINES ARE NOT EQUAL
Contrary to Wayne Green's (Publisher of Kilobaud
Magazine) generalized prognosis about micro-
computer magazines not publishing long software pro-
grams nor paying more than $50.00 for software pro-
grams, other microcomputer magazines have been do-
ing this for some time now. KILOBAUD'S apparent
policy of not publishing long programs nor paying more
than $50.00 for a software program article in no way
establishes the trend at the publishing market place.
BYTE, Dr. DOBB'S JOURNAL & INTERFACE AGE
all have published long software programs in the past.
Although I cannot speak for the other microcomputer
magazines, INTERFACE AGE will continue to publish
long programs. A good example of this is the 1976
December issue of INTERFACE AGE. This issue in-
cluded the following software articles:
• Mark Borgerson's, Test Editor for the SWTPC-6800
software article consisting of 6V£ typeset pages
including a 605 line statement source listing pro-
gram;
• Roger Rauskolb's Dr. Wang's Palo Tiny BASIC soft-
ware article consisting of 10 typeset pages includ-
ing grammar and over 1700 line statement source
listing program;
• Four part serial LLL BASIC Interpreter software
article that includes grammar and complete source
listing program with over 200,000 bytes of source
code that probably will require well over 50 typeset
pages to publish.
Both of the other microcomputer magazines also
have published meaningful long programs.
In regards to total payment for long software pro-
grams both BYTE and INTERFACE AGE are paying up
to $50.00/typeset page for software manuscripts (Dr.
Dobb's Journal current policy is not to pay for manu-
scripts published). Even a six year old would tell you
that $50 times say 10 pages is more than $50 which
is apparently the maximum price that KILOBAUD
would pay for this software article.
To draw your own conclusions as to which micro-
computer magazine to submit your software programs
please refer to the following columns in this issue of
INTERFACE AGE:
• INTERFACE AGE'S Best Article of the Month
Award.
• INTERFACE AGE Will Pay Up to $50/Page for Soft-
ware
• Best Article Of the Year Award
INTERFACE AGE IS FILLING THE SOFTWARE VOID WITH
MAJOR PROGRAMS
INTERFACE AGE is filling that microcomputer
software void. This issue includes six articles on
software featuring a major stock investment program,
and six software development programs. These
programs are:
• The stock option program by Edward Christianson
provides microcomputerized Hedge Options for the
sophisticated stock investor. This software article in-
cludes fundamentals and presents stock investment
strategies required to be successful at the market
place. The software program is written in Processor
Teck's 5K BASIC for the 8080 microcomputer
• A Random Number Generator assembly language
program by Bob Martin provides an improved RND
Function Generator for your 8080 BASIC Inter-
preter. In addition a RND Function Generator Chi-
Square test program is included to help you deter-
mine just how good is your RND Function Gener-
ator.
• An 8080 Memory Object Code Search Routine in
assembly language by T. E. Travis provides means
for searching unknown object code for known in-
struction sequences in order to modify object coded
software to be compatible with your system or to
add software embellishments.
• A resident 6800 development software monitor pro-
gram called PROTO developed by and made avail-
able to the readers of INTERFACE AGE by Ameri-
can Microsystems. PROTO is a ROM resident mon
-itor firmware package that comes with AMI's EVK
series of microcomputer boards.
• A BASIC Floating Point Math Package by David
Mead and others for the LLL BASIC Interpreter is
presented in this issue. This is part #3 of the series
of articles on the LLL BASIC Interpreter program.
CALL FOR INFORMATION ON BASIC PROGRAMMING
LANGUAGES
INTERFACE AGE is conducting a survey on the
characteristics and programming power of micro-
computer BASIC conversational programming lan-
guages. This survey includes Tiny BASIC (TB), Tiny
BASIC Extended (TBX), Standard BASIC (SB), Stan-
dard BASIC Extended (SBX) and Business BASIC (BB)
languages. One of the many objectives of this survey is
to highlight the correlation between BASIC languages
in order to provide insight for running a BASIC appli-
cation program on any of the different BASIC lan-
guages. At the completion of this survey, the results
will be published in INTERFACE AGE.
If you have developed, helped develop, or modified
any BASIC type of programming language for any
microcomputer, please contact or send hard copy of
grammar, user's manual, copy of software and any
supporting documentation to Robert A. Stevens, soft-
ware editor, INTERFACE AGE. Please include your
home and work telephone numbers (for coordination)
with all correspondence.
BEST ARTICLE OF THE MONTH AWARD UP-DATE
INTERFACE AGE will bestow an Honorary Award of
$100.00 to the author of the best non-commercial
microcomputer article of the month. Only individuals
are eligible for this monthly honorarium. This monthly
FEBRUARY 1977
INTERFACE AGE 91
SOFTWARE SECTION
SOFTWARE EDITORIAL
award is in addition to the honorarium given on the
page count basis. Microcomputer articles may be on
hardware, software or a combination hardware-soft-
ware and will be judged by the INTERFACE AGE
readership.
INTERFACE AGE NEEDS YOUR VOTE
Help INTERFACE AGE determine the type of arti-
cles you want to see published in the future by casting
your vote of 10 points for the article (block voting) or
articles (by vote splitting) you liked best. Feedback will
provide encouragement to authors and wil! help make
the INTERFACE AGE The Microcomputer magazine of
the industry.
Each INTERFACE AGE magazine shall include one
original bingo voting card. Each individual possessing a
bingo voting card shall be allowed up to ten votes to be
cast as a total single vote block for one author or sub-
divided into any vote block segment size combin-
ations, with the total cast vote sum not to exceed ten,
cast between two or more authors (no xerox copies of
the bingo vote card please). Each published article is
assigned a block of 10 bingo card numbers with the
last digit of the number (LSD) to represent your cast
vote value. 0 represents a vote value of 10. The prefix
digits of the number block defines the article number.
All valid bingo vote cards must be postmarked prior
to 12:00 P.M. of the last day of the month following
the issue date of the related magazine.
BEST ARTICLE OF THE YEAR AWARD
INTERFACE AGE will bestow an Honorary Award of
$500 value in products advertized in INTERFACE AGE
to the author . of the best non-commercial micro-
computer article published during the year ending
November 1 977. The best article of the year award will
be picked from the group of the best article of the
month awards. Like the best article of the month
award, only individuals are eligible for this yearly
honorarium. The yearly award is in addition to the
monthly award and honorarium given on the page
count basis. The yearly award will be judged by the
editors of INTERFACE AGE and will be announced in
February 1978 issue of INTERFACE AGE.
INTERFACE AGE WILL PAY UP TO
S50/PAGE FOR SOFTWARE
INTERFACE AGE is continually soliciting original
unpublished quality documented highly commentated
source/object code software listings and software
technical articles for publishing in the INTERFACE
AGE. Manuscript text must be typed double spaced
with wide margins. Figures, tables, flow diagrams and
charts must be numbered and submitted on separate
sheets of white bond paper (Send original copy only).
Program listings must be printed on white clean paper
using a new black ink ribbon, and please, if possible,
supply a punched paper tape assembly (source + ob-
ject) code listing + source code listing + object code
dump with your hard copy. Be sure to record your
name, company and office and home telephone num-
bers on all materials submitted to the software editor.
Also include statement in cover letter allowing INTER-
FACE AGE and the Microcomputer Software
Depository to publish and distribute copies of your
software program. Include a prepaid postage stamped
envelope with your return address only if you want
your manuscript returned, in the event that the sub-
mitted article is not accepted for publication.
Articles accepted and published will receive an
honorary recognition award. Honorariums are based
upon technical content, manuscript preparation and
subject suitability for publication in INTERFACE AGE.
Honoraria range from $1 5.00 to $50.00 per typeset
magazine page. In addition, the best article of the
month submitted will receive a $100 bonus.
INTERFACE AGE'S readership will determine by vote
which is the best article. (See best article of the month
award). All software submitted to INTERFACE AGE
will be deposited in the Microcomputer Software
Depository (MDS) for low cost distribution.
Address all software correspondence to R. A.
Stevens, Software Editor, c/o INTERFACE AGE
Magazine, 2361 E. Foothill Blvd., Pasadena, CA
91 107 or call (213) 449-1655.
SOFTWARE SHOPPING LIST
Now that INTERFACE AGE has expanded the
microcomputer software coverage and developed a
large appetite for good software, your programs and
application software is badly needed to sate this en-
larged software appetite. This software shopping list
includes the following:
• Microcomputer Development Software such as
assemblers, disassemblers, editors, monitors,
utilities, mini-maxi BASIC interpreters and com-
pilers, FORTRAN interpreters and compilers, boot
strap loaders, software drivers, cassette software
operating systems (COS), floppy disc software oper-
ating systems (FDOS), TTY software operating sys-
tems (TTYOS), and CRT software operating sys-
tems (CRTOS) for all microcomputer configur-
ations.
• Short Software Routines such as math packages and
I/O diagnostics for all microcomputer configur-
ations.
• Application Software Programs such as Analog To Digital
Converter (DAC) - Digital to Analog Converter (DAC)
software control programs, Automated mem-
bership billing and mailing list update program,
Inventory control software, invoice and billing soft-
ware. Accounts Receivables and Payable software,
process control programs, etc. for all micro-
computer configurations.
• Software Communications Protocol Programs for such
communication protocols as the BSC or Bisync
(Binary Synchronous communications protocol
procedures) and the new SDLC (Synchronous Data
Link Control communication protocol procedures),
etc.
• Off-line Software Storage Format Control Programs for cas-
sette, paper tape, and floppy disc software record-
92 INTERFACE AGE
FEBRUARY 1977
SOFTWARE SECTION
SOFTWARE EDITORIAL
ing formats.
• Microcomputer Game Programs
• Add Your Own Program Shopping List Here Send your list
to the software editor.
HALF SIZE PROGRAM LISTINGS VS FEWER PROGRAMS
UPDATE
Starting with this issue full size xerox copies of soft-
ware published in half size format will be available
from the Microcomputer Software Depository (MSD).
See MSD program listing for details.
INEXPENSIVE MICROCOMPUTER SOFTWARE
The Microcomputer Software Depository (MSD) will
act as repository for source and object code tapes.
Programmers wishing to contribute programs to the
public domain but who do not want to bother with
distribution, may do so by forwarding appropriate
documentation including short descriptive write-up
and punch paper tape copy of program if possible or
cassette copy to MSD. There is no membership fee for
access to the public domain paper tapes (PDT) from
MSD.
Anyone may obtain copies of these PDT software
packages by prepaying a small fee with the order to
cover duplication, postage and handling cost. Prices
will be listed periodically in INTERFACE AGE. Typical
cost for a short program will be approximately $2.00
($2.00/ounce) + tax, postage and handling. As a
convenience MSD will also provide punched paper
tape copies of vendor supplied software packages
(VSP) that will be sold at vendor suggested sale prices.
For a current copy of the available software from the
Microcomputer Software Depository (MSD) send a
check for $1.00 with a prestamped return envelope to
MSD.
Support MSD to build a software library by sending
copies of your documented software programs includ-
ing short description, flow diagrams and punched
paper tape source code and object listings if possible
or cassette tape copy for low cost distribution to the
following address: Microcomputer Software Depo-
sitory, 2361 E. Foothill Blvd., Pasadena, CA. 91107;
(213) 449-0616.
The following lists software available from MSD on a pre-
paid basis only. The total cost of each package is the sum of
the basic price + California sales tax, if applicable, +
postage and handling cost. Foreign subscribers please note
the different mailing cost for postage outside USA. Address
all inquiries to
Microcomputer Software Depository
2361 E. Foothill Blvd.
Pasadena, Calif., 91 107
or call (213) 449-0616
MICROCOMPUTER SOFTWARE DEPOSITORY (MSD)
PROGRAMS DATE FEB. 1977 REV. 1
PROGRAM MEDIA
PTAC PAPER TAPE ASSEMBLY CODE
PTSC PAPER TAPE SOURCE CODE
PTOC PAPER TAPE OBJECT CODE
PTBC PAPER TAPE BASIC CODE
PTAL PAPER TAPE ASSEMBLY LISTING
PTSL PAPER TAPE SOURCE LISTING
PTOL PAPER TAPE OBJECT LISTING
PTOD PAPER TAPE OBJECT DUMP
PTBL PAPER TAPE BASIC LISTING
CTAL CASSETTE TAPE ASSEMBLY LISTING
CTSL CASSETTE TAPE SOURCE LISTING
CTOL CASSETTE TAPE OBJECT LISTING
CTOD CASSETTE TAPE OBJECT DUMP
CTBC CASSETTE TAPE BASIC CODE
CTBL CASSETTE TAPE BASIC LISTING
HCAC XEROX HARD COPY OF ASSEMBLY CODE
HCSC XEROX HARD COPY OF SOURCE CODE
HCOC XEROX HARD COPY OF OBJECT CODE
HCBC XEROX HARD COPY OF BASIC CODE
HCAL XEROX HARD COPY OF ASSEMBLY LISTING
HCALF FULL SIZE XEROX HARD COPY OF ASSEMBLY
LISTING
HCSL XEROX HARD COPY OF SOURCE LISTING
HCOL XEROX HARD COPY OF OBJECT LISTING
HCOD XEROX HARD COPY OF OBJECT DUMP
HCBL XEROX HARD COPY OF BASIC LISTING
TEXT XEROX HARD COPY OF PRINTED TEXT
PTTL PAPER TAPE TEXT LISTING
CTTL CASSETTE TAPE TEXT LISTING
MAN MANUAL
HCGR XEROX HARD COPY OF GRAMMAR
PTGR PAPER TAPE COPY OF GRAMMAR
BBSL XEROX HARD COPY OF BINARY BOOTSTRAP
LOADER
HBSL XEROX HARD COPY OF HEX BOOTSTRAP
LOADER
PACK PACKAGE PRICE INCLUDES ALL
ITEMS/PROGRAM # WITH SYMBOL <
SUFFIX C = HAND ASSEMBLED CODE
SUFFIX L = COMPUTER FORMATED LISTING
SUFFIX D= CODE DUMP IN OCTAL OR HEX
SUFFIX F= FULL SIZE COPY
NOTES
>
%
CALIF. SALES TAX REQUIRED FROM RESIDENTS
OF CALIF.
USA POSTAGE + HANDLING OR THIRD CLASS
USA POSTAGE + HANDLING OR SURFACE RATE
FOREIGN POSTAGE @ THREE TIMES THIRD CLASS
USA POSTAGE RATE (STANDARD) OR SURFACE
RATE FOREIGN POSTAGE @ FIVE TIMES USA
POSTAGE RATE (ALTERNATE)
NEW PROGRAM LISTING
VENDOR SOFTWARE PACKAGE
DEFINITIONS:
ASSEMBLY LISTING: COMPUTER ASSEMBLED SOFTWARE
PROGRAM LISTING THAT INCLUDES SYMBOLIC
ASSEMBLY LANGUAGE SOURCE CODED INSTRUC-
TIONS WITH COMMENTS PLUS EQUIVALENT MACHINE
LANGUAGE OBJECT CODED INSTRUCTIONS AND
MEMORY ADDRESS ASSIGNMENTS FOR EACH
INSTRUCTION (SOURCE + OBJECT).
ASSEMBLY CODE: SAME CONTENT AS ASSEMBLY LISTING
BUT HAND ASSEMBLED.
SOURCE LISTING: SOFTWARE PROGRAM LISTING
RESULTING FROM COMPUTER SOFTWARE
CONTROLLED ASSEMBLY PROCESS THAT INCLUDES
ASSEMBLY LANGUAGE SOURCE CODED INSTRUC-
TIONS WITH COMMENTS. SOMETIMES, LINE
STATEMENT NUMBERS ARE INCLUDED FOR EACH
INSTRUCTION. BRANCH TO PAGE 101
FEBRUARY 1977
INTERFACE AGE 93
SOFTWARE SECTION
SHORT SOFTWARE ROUTINES
Have you ever been suspicious of the numbers that
your version of BASIC pumps out for use in your
favorite computer game? Maybe the royal rats are con-
sistently eating too much grain in the game of KING-
DOM, or possibly you think your shields are absorbing
energy at an unreasonable rate in STAR TREK. If this
sounds familiar, I suggest you pay a visit to your
favorite psychiatrist and get checked out for a perse-
cution complex. The only way you could guess that
your random number generator was a lemon is if it
were written by Maxwell's Demon, the infamous vio-
later of the Second Law of thermodynamics.
Need A Better Random Number Generator?
By Bob Martin
There is a right number, a wrong
number and a random number. But
when is the right number a wrong
number for a random number?
Having said that, I am going to claim anyway that I
did detect a bad one in this manner. My guess that it
was a bad generator, turned out to be correct. A few
weeks back I wrote a Yahtzee game in order that my
wife could play with the computer. (This is a good
practice. It helps to reassure her that the money we
spent on it was well worth it.) While checking out the
game for errors I noticed, more often than I could
believe, that the game ended with the sixes box empty.
How many games with zero in the sixes box would be
believable?
The RND function in BASIC returns a decimal
fraction that lies between zero and one. Now suppose
you have ten boxes and four red marbles ... No wait!
I'm not going to do that. Everybody falls asleep when
the boxes and marbles are brought out. Let's assume
that everyone reading this likes programming. There-
fore we have an array of ten elements numbered zero
through nine. All ten elements start out with the value
zero. We will now call upon the RND function to
decide which of the ten elements to increment by one.
This is very simple. Just let X = INT (10*RND(0)). X
will now be the number of the element that is to be
incremented. Now do this for, say, 1000 calls of RND.
If RND generated truly random numbers, would it be
believable if each element had the value 100? A per-
son who had not studied elementary statistics might
be surprised to learn that this would be very unbeliev-
able.
To describe just how unlikely it is that the above
result was produced by a truly random generator, let
me change the outcome slightly. I will change it to a
result that is much more likely to have been produced
by a real random number generator. Suppose the ten
elements turned out to have the following values: four
of them were 95. four were 1 05, one was 99 and one
was 101. A truly random RND function would give a
result, this close to the expected result, only once in
100 trials of the experiment. (Each experiment,
remember, was 1000 calls of RND.) Yet this modified
result is very much more probable than the case where
all ten elements have the value 100.
RND FUNCTION CHI-SQUARE TEST
You might wonder how such things can be deter-
94 INTERFACE AGE
FEBRUARY 1977
SOFTWARE SECTION
SHORT SOFTWARE ROUTINES
mined. It is made possible by using one of the oldest
statistical tests there is. This test is called the chi-
square test and was introduced by KaN Pearson in
1900. We don't care right now why it works. Let that
be a question to motivate the reading of some mathe-
matics. For the present we only want to know if our
random number generator can pass the chi-square
test.
To make this test we must calculate a number
called the chi-square statistic. This calculation is very sim-
ple for a random number generator. First, pick the
number of categories you wish to use. In the. above ex-
ample the number was ten. Next choose the number of
independent observations to be made. We used 1000.
Now, since there are 1000 numbers that can fall into
10 categories, we would expect there to be 100 in
each of them. We will call this the expected value even
though we know better than to expect it too often.
Take the expected value and subtract it from the
value observed in each category. The observed values
in the example above are the values that the elements
of the array had after 1000 calls of RND. Take the
result of each of these subtractions and square it. Now
divide each of them by the expected value. To get the
chi-square statistic, add all these numbers together. In the
example above, you will have to sum ten numbers, one
for each category. The chi-square statistic for the modified
example above is 2.02.
HOW TO READ THE TEST RESULTS
Now you want to know what this number tells you
about your random number generator. That's easy. It
has all been worked out for you in a table. If you do not
like tables, fear not. The chi-square distribution table is
simple. The only thing you need to know is that (for our
problem) the number of degrees of freedom is one less
than the number of categories. We had ten categories,
therefore we had nine degrees of freedom. Find the
row in the table labeled with the number 9. This is the
only row of data that will pertain to your generator.
(You would use a different row if you had chosen a
number of categories other than ten.) Now find the
place your chi-square statistic falls in this row of data.
Each number in the row also has a number at the top
of its column. This is the number that interests you. It
will be either a percentage figure or a decimal fraction
less than one.
To illustrate, suppose your chi-square statistic is 2.09.
Look for the number 2.09 in the row labeled 9. At the
top of the column that contains 2.09 you will find
either .99 or 99%. What this number means is the
following: If your random number generator was truly
random, then 99% of the time it would produce a
number greater than 2.09. It is now up to you to
decide if this is sufficiently random for your intended
use of the generator. Since 99% is most of the time,
you probably would not accept this. The same goes for
the other end of the row. If you came up with the figure
1%, it would mean the ideal generator would get a chi-
square larger than yours only 1% of the time.
A simple way to proceed is to declare the generator
is acceptable if it falls within the 95 to 5 percent range.
For the 9 degrees of freedom we have been using, this
amounts to saying we will accept the generator if it
can produce a chi-square statistic that lies between 3.3
and 16.9. The BASIC program given below may be
used to test your random number generator. It uses
10,000 trials of RND and puts them in 10 categories.
Notice that the number of trials has no effect on how
the table is used. Only the number of degrees of
freedom is important.
I tried this program with my three versions of
BASIC. The results were so poor (chi-square of 217 was
typical) that I had to recheck the chi-square program for
errors. A moment's thought, of course, will give the
reason why they were all so poor. Why take up more
space than you have to in a BASIC interpreter, if most
people only use RND to play STAR TREK? I can think
of a couple of possible reasons; one is that someday
you might want to use RND for something besides play-
ing games. Another is that a bad RND might cause you
to lose more games than is good for your self-image.
Even if you do always win easily, the games will not be
fun for long when you know that the reason you win is
a faulty RND.
JUST HOW GOOD IS YOUR RND FUNCTION
GENERATOR?
The bottom line is that it is simply more satisfying to
have a good RND. Yahtzee feels better if you know
your computer dice are as good as real ones. So try the
test program (unless you wish to remain forever in
doubt) and if your RND fails, I have a solution below
for you. I might give one word of caution here that will
serve as an incentive to read on. Even if your RND
passes the test, it is not insured that your generator is
perfect. There is a whole battery of tests that may be
•run. One such test is called the serial test which checks
to make sure you don't have too many ascending or
descending sequences of numbers. A socalled feedback
generator will often fail this test. The generator I give
below in 8080 code can pass many of the tests for
randomness.
A BETTER RND FUNCTION GENERATOR
The method used here, to generate a sequence of
random numbers, is a very common one called the
mixed linear congruential method. It works like this.
The previous random number (you must supply the
very first number called the seed) is multipled by a
number called the multiplier. To this is added another
number called the constant. Then still another number
called the modulus is repeatedly subtracted from the
result until the result is less than the modulus. This will
then be the new random number. The whole process is
repeated over and over, producing a sequence of
numbers all of which are less than the modulus. If each
new random number is always divided by the modulus,
the result will be a sequence of numbers that are just
what RND is supposed to produce, a sequence of ran-
dom numbers that ail lie between zero and one. It will
be a random sequence provided that multiplier, constant
and modulus are chosen properly.
A look at the 8080 RND function generator
program will reveal two familiar strings of digits used
for the multiplier and constant. The number used for the
modulus is 2 raised to the 35th power. This makes it es-
pecially easy to do the repeated subtraction of the
modulus when the arithmetic is done in binary. In fact, it
FEBRUARY 1977
INTERFACE AGE 95
SOFTWARE SECTION
SHORT SOFTWARE ROUTINES
There are many areas to consider for
the implementation of a good random
number generator
AW
AW
1?
8& 2r
aft
J*1
doesn't need to be done at all. Just ignore all bits
higher than 35 and the modulus operation is taken care
of automatically. Since the number of bits is finite we
cannot produce an infinite sequence of numbers. At
some point the generator must repeat a number that
was produced earlier. When this happens the whole
pattern will also be repeated because the current
number is always constructed from the immediately
preceding number.
The above generator will give through all possible
35 bit numbers before it repeats. You may have
noticed that the familiar numbers used are not what
they should be in the last digit of each. They were
changed so as to meet the conditions of a theorem that
guarantees the generator will go without repeating as
long as possible. In this case it will run for about 2 to
the 35th or 34 billion numbers. To call the RND
function this many times on my little micro would con-
sume 1 1 years of around-the-clock computer time. Of
course a long period is no guarantee of randomness.
Counting from zero to 34 billion gives a sequence of
long period which is obviously not random. The
parameters given above provide for both a long period
and randomness.
APPLICATION OF RND FUNCTION GENERATOR
There are a couple of things you must know to use
this generator. If you want to repeat a given sequence
of numbers, then locations 29AB through 29AF must
be initialized with the same number each time you
want to run the sequence. The fact that a sequence is
reproducible is the reason these generators are called
psuedo-random. If you don't care about being able to
repeat a sequence then don't worry about what seed is
at these locations. Since the generator is of maximum
period there is no seed than can get you hung up in a
shorter period sequence.
Another thing to know concerns returning the ran-
dom number to your BASIC interpreter. The last part of
the routine converts the binary random number in
29AB - 29AF into a BCD number and puts it in loca-
tions 29B0 through 29B5. This number must now be
made compatible with the floating point representa-
tion of your BASIC interpreter. This is necessary
because the BCD number must be divided by the
modulus so that the final result lies between 0 and 1. A
better method is to multiply by the inverse of the
modulus (2 to the minus 35th or 2.91038E-1 1). Jump
to your routine that does this preparation and multi-
plication from location 299F. A return after the multi-
plication should return to whatever called RND.
Remember that if your BASIC uses only six
significant digits then only six digits of the BCD
number are required. This will mean that a given
number returned by RND will show up more often than
once every 34 billion calls. However the pattern in the
sequence before and after it will be different.
RND FUNCTION APPLICATIONS
Now that you have a fairly decent RND, what can
you do with it besides play games? One demonstra-
tion is a simple example of what is called a Monte
Carlo simulation. Try to calculate the number Pi by
using RN D: Draw a unit circle. Enclose the circle with a
96 INTERFACE AGE
FEBRUARY 1977
SOFTWARE SECTION
square that touches it at four points. Now use RND, in
a BASIC program, to shoot darts over the entire area of
the square. Count both the total number of darts
thrown and the number of these that fall inside the
circle. The ratio of the darts inside to the total number
is the same as the ratio of the area of the circle to that
of the square. The area of the circle is just Pi and the
area of the square is four. Therefore multiply the dart
ratio by four to get Pi.
If you should want to try this, here are two things to
make it easier. First, use only the first quadrant.
Second, when deciding if the dart is inside or outside
the circle, there is no need to take the square root (unit
circle). When I tried this on my computer with 16,000
darts 1 4 different times, I got the following results: Old
bad RND, Pi = 3. 07778; New good RND.
Pi = 3. 14128. Both had a standard deviation of .01.
This method may be used to find volumes, masses,
centers of mass etc., on more complcated objects that
cannot be calculated exactly by other means.
Here is one more application which, even though
unrealistic, might give you some other ideas. Suppose
you know the average lifetime and the standard devia-
tion of the chips in your 65K memory system. As the
time approaches for the end of the first lifetime, more
and more chips must be replaced one at a time. You
might wonder if there is a time when it would be
cheaper to just replace all the memory at once. Factors
that would influence you to make a total replacement
are: (1 ) discount price on large quantity of chips; (2) no
time is wasted hunting for bad chips. Of course this is
unrealistic because these factors would have to be
greatly exaggerated before even one total replace-
ment would be considered reasonable.
One way you might want to simulate this problem is
to consider each chip separately. As you come to each
chip you want an answer to the question, "How long
before this chip will break down?" To get the answer
just use the BASIC subroutine given below. Pass it the
mean lifetime of a chip (M 1 ) and the standard
deviation of this lifetime (D1) and it will return the
amount of time until the next breakdown (X) for that
chip. The subroutine uses the Center Limit approach to
simulate a normal distribution with the given
parameters. Now run through the history of each chip
for a given period of time, say, five years. Record the
cost of each individual breakdown and the cost of each
replacement of all 65K. The number of times the 65K
is replaced in five years is determined by the time
between replacements that you have selected. Run
through all the chips for the five year simulation with
your first selection for this amount of time. Then try it
again for another time; and another. Vary this time (in
a systematic fashion) until the toal cost of main-
tenance for a five year period is a minimum. When
the minimum is found you have the answer to your
problem.
SUPER RND FUNCTION GENERATOR
One final note. If by chance the given generator
should fail to be random in some application you might
dream up, there is a plan for the Super Random
II
i
LEAR-SI EG LER MODEL ADM
VIDEO TERMINAL (24 X 80)
KIT ONLY WHILE SUPPLY LASTS
SEALS 8K MEMORY
KIT ONLY WHILE SUPPLY LASTS
CROMEMCO TV DAZZLER
KIT ONLY WHILE SUPPLY LASTS
CROMEMCO BYTESAVER
KIT ONLY WHILE SUPPLY LASTS
TVT TYPEWRITER KIT
WITH BOARD
KIT ONLY WHILE SUPPLY LASTS
CONTROL DEVELOPMENT
CORPORATION KEYBOARD
KIT ONLY WHILE SUPPLY LASTS
BOOKS: BASIC BASIC
ADVANCED BASIC
3K
$799 oo
$235.00
$189.00
175.
00
125.
00
$70 oo
$595
$R 95
COMPUTER CLUB MEMBERS
SEND US A SELF-ADDRESSED STAMPED
ENVELOPE AND ENCLOSE THE NAME,
ADDRESS AND PHONE NUMBER OF THE
COMPUTER CLUB YOU BELONG TO AND WE
WILL SEND YOU SPECIAL COUPONS GOOD
TOWARDS THE PURCHASE OF UN-
ADVERTISED SPECIALS ON MERCHANDISE
AND BOOKS.
LET US SHOW YOU HOW YOU CAN SAVE
TO PLACE ORDERS
CALL OR WRITE TO: DATA IV, INC.
ASK FOR OUR CATALOG
OF DISCOUNT PRICES ON
PRODUCTS FROM: IMS,
CROMEMCO, LEAR-
SIEGLER, TDL AND MANY
OTHERS.
5706 BARRYMORE DRIVE
CENTREVILLE, VA. 22020
(703) 524-9335
MAIL ORDERS SHIPPED PREPAID IF FULLY PAID WITH ORDER
25% OF AMOUNT PURCHASED IN ADVANCE WITH C.O.D. ORDERS
VIRGINIA RESIDENTS ADD 4% SALES TAX
ALL PRICES and SPECIFICATIONS SUBJECT TO CHANGE
WITHOUT NOTICE
CHECK or MONEY ORDER ONLY
CIRCLE INQUIRY NO. 57
FEBRUARY 1977
INTERFACE AGE 97
SOFTWARE SECTION
SHORT SOFTWARE ROUTINES
Number Generator. It was suggested by McLaren and
Marsaglia and is said to meet anyone's criteria for
psuedo-randomness. To accomplish this, two gen-
erators are required. Let the generator given above
be called generator A. To construct generator B, simply
exchange the values of multiplier and constant of
generator A. Use generator A to lay out a list of about
100 random numbers. Use generator B to decide
which of these 100 will be the next in our Super Se-
quence. The number which is used will be removed
RND FUNCTION GENE
from the list and replaced by a new number given by
generator A. The whole process is repeated for the
next number in the Super Sequence.
In summary I wish to encourage you to dump that
old mantra you have been using and begin chanting
RND to experience the true chaos of the universe.
SEE MICROCOMPUTER SOFTWARE DEPOSITORY
PROGRAM INDEX FOR COPIES OF THIS PROGRAM
R FLOW DIAGRAMS
FORM PRODUCT OF
LAST RND # WITH
MULTIPLIER (BINARY
MULTIPLY OF 4X 5 BYTES)
RSPC:
5 BYTES FOR PREVIOUS
BINARY RANDOM NUMBER
MULT:
4 BYTES FOR
BINARY MULTIPLIER
WKSP:
USE 5 BYTES AS
TEMPORY STORAGE
FOR PRODUCT
INITIALIZE MULT
ANO RSPC POINTERS
TO LOW Q R D£ R BYTES
SET MULT
SYTE COUNTED
SET MULT
B17 COUNTER
2
SHIFT 5 BYTES OF
RSPC LEFT ONE BIT
AS IF IT WERE ONE
BIG 40 BIT WORD
RESET iPOPl MULT
AMD RSPC POINTERS
TO PROPER BYTE
PUSH BYTE
COUNTER
PUSH MULT ANO
RSPC POINTERS
i
CALCULATE NUMBER OF BYTES
NEEDED TO ADD
SAVE IN 8 REGISTER
CALCULATE POINTER
FOR WKSP
ADD NEXT BYTE
OF RSPC TO
WKSP WITH CAflflY
DECREMENT
POINTERS ANO
5 REGISTER Sv l
DECREMENT MULT
SIT COUNTER BY I
DECREMENT MULT
AND RSPC POINTERS.
POP BYTE COUNT
AND DECREMENT
IT BY 1
98 INTERFACE AGE
FEBRUARY 1977
SOFTWARE SECTION
SHORT SOFTWARE ROUTINES
ADD THE CONSTANT TO
THE RESULT (WKSP)
BINARY ADD OF 4 BYTES
PDH$: 4BYTES FOR
BINARY tX3MSTAHT
INITIALIZE POINTERS
FOfl CONS. WK&P
MP F5PC
CLEAH C&nflV
SET BYTE COUNT EN
TO 5
byte cou^tia
AT ACOH
CONVERT BINARY RANDOM
NUMBER TO BCD BY
POLYNOMIAL EVALVATION
USING HORNER'S METHOD
ADD WITH CAHHv TO
CORFfESr*DWBlNti 6Y1E
OF WKSP
SAVE RESULT IN
CtJBflESPOMDINC &YTE
Of flSPC
DECREMENT PDiMtRf!
ton cows wksp
AND PS PC
GET BYTE COUNT
FROM ACON AND
DECREMENT ft BY I
M*KE 1" BYTE 0» H.&PL
MOD lfl INITiAi (IE
bit AND BYTE COUNTERS
PUSH IMEM
CLEAR CARRY
SET BYTE COUNT
FOR WKSP
INITIALIZE WKSP
POINTER
DOUBLE NEXT BCD
BYTE OF WKSP
+ CARRY.
DECIMAL ADJUST IT
DECREMENT
BYTE COUNT BY 1
FILL WKSP
WITH ZEROES
GET NE*T BIT
OF BINARY
AAWDOM NUMBER
SET CflUNTEfl
INITIALIZE POINTER
PLTH wksp
PUT ZERO IN NEXT
BYTE. INCREMENT
POINTER. DECREMENT
COUNTER BY 1
aiUHTtf) pr l
PDP EYtE COUNT
INCREMENT flSPC
POINTER SET HIT
COONTEfl TO B
CONVERT BCD
IN WKSP TO A
FORM COMPATABLE
WITH FLOATING
POINT REPRESEN-
TATION OF SYSTEM.
MULTIPLY IT
BY 2 "
^ RETUHTf ^
ADD ONE TO WKSP
PROPIGATE CARRIES
THROUGH BYTES
DECIMAL ADJUST
AFTER EACH CARRY
Add the constant to the result (WKSP) binary ADD of 4
bytes
FEBRUARY 1977
Convert binary random number to BCD by polynomial
evaluation using Horner's method
INTERFACE AGE 99
SOFTWARE SECTION
MICROCOMPUTER DEVELOPMENT SOFTWARE
RND FUNCTION GENERATOR PROGRAM
2900
2903
2906
2909
290B
290D
290E
290F
2910
291 1
2912
2913
2916
2919
291 A
291B
291E
29 IF
2920
2921
2922
2923
292/f
2925
2928
2929
292C
292E
292F
2930
2931
2932
2933
2936
2937
2938
2939
293C
293D
293E
293F
29^0
CDBB29
21A529
1 1AF29
0605
OE08
C5
D5
E5
7E
OF
77
D22929
2156D6
19
i*3
210500
19
1A
8E
77
2B
IB
05
C21F29
AF
1 1AF29
0605
1A
17
13
IB
05
C22E29
E 1
D1
OD
C20E2 .
CI
2B
111
Oj
C20B29
29*t3 01AA29
29^6 21B/f29
2^9 1 1AF29
Z%t AF
29^fD 3E05
29^fF 32BA29
2952 OA
2953 8E
295*t 12
2955 OB
2956 IB
2957 2B
TITLE /RANDOM NUMBER GENERATOR/
THIS ROUTINE GENERATES RANDOM NUMBERS BY
THE LINEAR CONGRUENTIAL METHOD (MIXED)
FORM THE PRODUCT OF THE LAST RANDOM
NUMBER WITH THE MULTIPLIER
RND:
ADCL:
CALL ZERO
CLEAR WORK SPACE
LXI H.MULT+3
POINT TO MULTIPLIER
LXI D,RSPC+/f
MVI B,5
POINT TO LAST RND NUM
SET BYTE COUNT
MVI C,8
SET BIT COUNT
PUSH B
SAVE BYTE COUNT
PUSH D
SAVE BEG OF ADD
PUSH H
CURRENT BYTE OF MULTIPLIER
MOV A,M
GET BYTE OF MULTIPLIER
RRC
ROTATE IT
MOV M A
PUT IT BACK
JNC NOBT
JUMP IF NOTHING TO ADD
LXI H,-RSPC-1
LIMIT OF RND NUM
DAD D
CALC. COUNT TIL END
MOV B,L
SAVE COUNT
LXI H,5
RESULT GOES -
DAD D
5 BYTES DOWN
LDAX D
TST JJEXT BYTE TO ADD
ADC H
ADD TO EET.ULT
MOV M,A
SAVE IT
DCX II
NEXT BYTE JF RESULT
DCX D
NEXT BYTE TO ADD
DCR B
ONE BYTE DOWN
JNZ ADCL
LOOP IF NOT DONE
XRA A
CLEAR CARRY
LXI D,RSPC+/f
POINT TO START AGAIN
MVI B,5
SET COUNT
LDAX D
GET NEXT BYTE OF LAST RND NUM
RAL
SHIFT LEFT
STAX D
;PUT IT BACK
DCX D
ON TO NEXT BYTE
DCR B
DCR COUNT
JNZ SHFR
LOOP IF MORE
POP I
RESET H TO MULTIPLIER
POP D
RESET D FOR ADD
DCR C
ONE BIT OF MULT DONE
JNZ a\V'D
LOOP IF NOT DONE
POP B
GET BYTE COUNT
DCX H
ANOTHER BYTE DONE
DCX D
ADD POINT MOVES DOWN 1 BYTE
DCR B
DCR COUNT
JNZ BITC
LOOP IF MORE BYTES OF MULT
ADD THE CONSTANT TO THE RESULT
LXI B.CONS+3
LXI H.WKSP+/+
LXI D,RSPC+/f
XRA A
MVI A, 5
STA CNT
LDAX B
ADC M
STAX D
DCX B
DCX D
DCX H
POINT TO CONSTANT
RESULT OF MULT
PLACE FOR NEW RND HUH
CLEAR CARRY
SET COUNT
SAVE IT
GET NEXT BYTE
ADD THE PRODUCT
SAVE RESULT
BUMP
ALL
POINTERS
2958 3ABA29
295B 3D
295C C2/fF29
LDA CNT
DCR A
JNZ ACON
GET COUNT
DECREMENT IT
LOOP IF ANY LEFT
CONVERT BINARY RANDOM NUM TO BCD
295F CDBB29
CALL ZERO ;
CLEAR WORK SPACE
2962 1 1AB29
LXI D,RSPC ;
POINT TO BIN RND NUM
2965 1A
LDAX D ;
GET FIRST BYTE
2966 OF
RRC
MAKE IT -
2967 OF
RRC
MOD -
2968 OF
RRC
2»»35 (POWER)
2969 12
STAX D
PUT IT BACK
296A OIO305
LXI B.503H
PREPARE TO JUMP -
296D C5
PUSH B
INTO THE MIDDLE
296E C37529
JMP DLB1
DO IT
2971 13
DLB:
INX D
NEXT BYTE OF BIN RND
2972 C5
PUSH B
SAVE BYTE COUNT
2973 OE08
MVI C,8
BIT COUNT
2975 AF
DLB1:
XRA A
CLEAR CARRY
2976 0606
MVI B,6
BYTE COUNT FOR WKSP
2978 21B529
LXI H, WKSP* 5
LOW ORD OF BCD RND NUM
297B 7E
TTIM:
MOV A,M
GET NEXT 2 DIGITS
297c 8f
ADC A
DOUBLE THEM
297D 27
DAA
MAKE IT DECIMAL
297E 77
MOV M, A
PUT IT BACK
297F 2B
DCX H
MOVE TO NEXT HIGHER ORDER
2980 05
DCR B
DCR COUNTER
2981 C27B29
JNZ TTIM
LOOP IF MORE
298*t 1 A
LDAX D
GET BYTE OF BIN RND NUM
2985 07
RLC
CHECK FOR BIT
2986 12
STAX D
PUT IT BACK
2987 D29629
JNC MBT
JUMP IF NO BIT
298A 21B529
LXI H,WKSP*5
BCD RND NUM
298D 7E
PLUS:
MOV A,M
GET BYTE OF RND NUM
298E CEOO
ACI 0
PROP I GATE THE CARRY
2990 27
DAA
DECIMALIZE
2991 77
MOV M, A
PUT IT BACK
2992 2B
DCX H
;ONE DOWN
2993 DA8D29
JC PLUS
; DONE IF NOTHING TO CARRY
2996 OD
MBT:
DCR C
; DONE WITH 1 BIT OF BIN NUM
2997 C27529
JNZ DBL1
;LOOP IF MORE IN THIS BYTE
299A CI
POP B
; GET BACK BYTE COUNT
299B 05
DCR B
DECREMENT IT
299C C27129
JNZ DLB
LOOP IF ANY LEFT
299F C3XXXX
JMP
GOTO DIV ROUP.- U SUPPLY
29A2 BB/fO
MULT:
DW '+03BH
;3 I'll 592653
29A/f E6*fD
DW !fI-E6H
;THE MULTIPLIER
29A6 00
DB 0
;ZERO NEEDED HERE
29A7 A205
CONS:
DW 5A2H
; 271 828 1829
29A9 B065
DW 65BOH
;THE CONSTANT
29AB
SPC:
DS 1
; STORAGE FOR BIN RND NUM
29B0
WKSP:
DS1
; STORAGE FOR BCD RND NUM
29BA
CNT:
DS1
; XTRA COUNT
29BB 01000A
29BE 21B029
29C1 71
29C2 23
29C3 05
29C/f C2C129
29C7 C9
ROUTINE TO CLEAR WKSP
ZERO:
LXI B.OAOOH
LXI H.WKSP
MOV H,C
INX H
DCR B
JNZ ZER1
RET
COUNTER AND ZERO
PLACE TO BE CLEARED
PUT ZERO IN NEXT BYTE
NEXT' BYTE
DOWN WITH COUNT-
LOOP TIL D'NE
BACK TO WO 5K
RND FUNCTION GENERATOR CHI-SQUARE TEST PROGRAM
5 REM CKI-SQUARE TEST
10 DIM A(9)
20 K=10
30 N=10000
35 REM ZERO THE ELEMENTS
<*0 FOR J=0 TO K-l
50 A(J)=0;NEXT J
55 REM LET RND FILL THE ARRAY
60 FOR J=1 TO N
70 B=INT(K*RND(0 ) )
80 A(B)=A(B)*1
90 NEXT J
95 REM CALC. CHI-SQUARE
100 D=0
1 10 FOR J=0 TO K-1
120 C=A(J)-N/K
130 D=D-C*C
IZfO NEXT J
150 PRINT "CHI-SQUARE STATISTIC = ",K*D/N
160 STOP
500 REM THIS ROUTINE RETURNS A
501 REM NORMALY DISTRIBUTED RANDOM
502 REM VARIATE WITH PARAMETERS D1 AND Ml
505 X=-6
510 FOR K=1 TO 12
520 X=X*RND(0)
530 NEXT K
5*fO X=X-D1*M1
550 RETURN
100 INTERFACE AGE
FEBRUARY 1977
SOFTWARE SECTION
SOFTWARE EDITORIAL
VECTORED FROM PAGE 93
SOURCE CODE: SAME CONTENT AS SOURCE LISTING BUT
HAND ASSEMBLED.
OBJECT LISTING: SOFTWARE PROGRAM LISTING
RESULTING FROM COMPUTER SOFTWARE
CONTROLLED ASSEMBLY PROCESS THAT ONLY
INCLUDES MACHINE READABLE OBJECT CODED
INSTRUCTIONS AND MEMORY ADDRESS
ASSIGNMENTS.
OBJECT CODE SAME CONTENT AS OBJECT LISTING BUT
HAND ASSEMBLED.
HARD COPY: XEROX OR PRINTED COPY
CODE: HAND ASSEMBLED CODE (SOURCE, OBJECT, OR
ASSEMBLY CODE).
LISTING: COMPUTER FORMATED LISTING.
DUMP: COMPUTER MEMORY DUMP.
MSD PROGRAMS
CPU
TYPE
SYMBOLIC DESCRIPTIVE
MSD 0
MEDIA
6502 APPLECD 6502 APPLE COMPUTER
DISASSEMBLER BY ALLEN BAUM
A STEPHEN WO ZNIAK -INTERFACE
AGE/ SEPT. 1976, VOL. I, #10.
B080 LPT I I HF
8080 DBBDP
LOAD 8080 PAPER TAPE IN
INTEL HEX FORMAT BY BURT
HASHIZUME- INTERFACE AGE,
OCT. 1976/ VOL.1, #11.
8080 BINARY FILES WITH
OPTIONAL AUTOSTART BY
WILLIAM H. JORDAN-INTERFACE
AGE, OCT. 1976, VOL. 1 , 0 1 1 -
MIN OPERATING SYSTEM BY ED
KEITH A DENNIS HESCOX-
I N T ERF ACE AGE, OCT. 1976*
VOL- 1 , * I I . PTAL + INCLUDES
OPERATING INSTRUCTIONS,
PAPER TAPE FORMAT ANO
SAMPLE RUN
DR. BEATTIE'S RASIC D 1 FT
PLANNING BY DR. BEATTIF-
I NTERF ACE AGE, OCT- 1976,
VOL • 1 , 0 11 .
6800 EZMERPS ECHO I, ZERO MEMORY, ECHO
REVERSE I PRINT SUBROUTINES
BY HOWARD BERFNBON-
I NTERFACE AGE, OCT. 1976,
VOL - I, 0 I 1 .
8080 ESP- 1 ESP-1 SOFTWARE PACKAGE BY
MICHAEL SHRAYER- INTERFACE
AGE, OCT. 1976, VOL. I, #11.
PTGR IS PAPER TAPE COPY OF
GRAMMAR.
8080 PTSP-l
8080 ERAMMT
PROCESSOR TECHNOLOGY
SOFTWARE PACKAGE NO. 1
SUMMARY BY R. A. STEVENS-
INTERFACE AGE, OCT. 1976,
VOL. I , 0 I I >
EXHAUSTIVE 8080 RAM MEMORY
TEST PROGRAM BY T.E.TRAVIS
-INTERFACE AGE, NOV. 1976,
VOL. 1, 0 12.
MFMDMP- I SWTPC 6800 MEMORY DUMP
PROGRAM MEMDMP-I BY GARY
KAY- INTERFACE AGE, NOV.
1976, VOL. I, #12.
6800 ROB IT -I
SWTPC 6800 ROTATING BIT
RAM MEMORY DIAGNOSTIC
PROGRAM ROBIT-1 BY GARY
KAY -INTERFACE AGE, NOV.
1976, VOL. I, #12.
MEMCON-l SWTPC 6800 SHORT MEMORY
ADDRESS CONVERGENCE
PROGRAM MEMCON-l BY GARY
KAY-INTERFACE AGE, NOV.
1976, VOL.1, #12-
I -TEXT
1 - HCAL
I -PACK
PRICE IN $
♦CALIF- TAX(*)
♦USA POSTAGEC :
2.00 + 0. 12+ 1 .00
INC. WITH TEXT
2-PTAL < 0 5.00+0.30+1.00
2-TEXT
2-HCAL
2- PACK
3- PTAL
3-PTOD
3-TEXT
3 -HCAL
3- PACK
4- PTAL+
4-PTOD
4-TFXT
4-HCAL
4-PACK
5-TFXT <
5-HCBL *
5-PTBL <
5- PACK <
6- PTAL <
6-TEXT -
6-HCAL *
6- PACK I
7- PTOD <2
7-MAN *
7-CTOD *
7-MAN *
7-PTGR *
7-TEXT -
7-HCGR ♦
7- PACK »
8- PTTL <7,
8-TEXT <
8-PACK 1
2.R0+0. 1 2+ 1 . 00
INC. I'M TH TEXT
5.00+0. 30+ I .00
INC. WITH PTAL
2.00 + 0. 12+ 1 . 00
INC. WITH TEXT
5.00+0. 30+ 1 . 00
INC. WITH PTAL
2.00 + 0. 12+1.00
INC. WITH TFXT
2.00 + 0. 12+ 1 . 00
INC. WITH TFXT
5.00+0. 30+ I . 00
3.00 + 0. 18+1.00
1.00+0.06+1 .00
INC. WITH TEXT
30. 00+ 1 . 80+ I . 50
INC. WITH PTOD
30.00+ 1. 80+ I. 50
INC. WITH CTOD
5.00+0. 30+ I . 50
INC. WITH PTGR
INC. WI TH MAN
A. 00+0. 24+ 1 . 50
INC. WITH PTTL
9- PTAL < 0 fl-dlWfl.J).,! I .ttfl
6800 BJIB
BLACKJACK IN BASIC
PROGRAM BY ED KEITH ft
DENNIS HESCOX. THE BJIE
9-PTOD
9-TEXT
9-HCAL
9-HCOD
9-PACK
10-PTAL
10-PTSL
I0-PTOD
I 0-TEXT
10-HCAL
1 0- PACK
1 1 - PTAL
I l-PTSL
1 1- PTOD
1 1 -TEXT
I 1 -HCAL
1 1 -PACK
12- PTAL
12-PTSL
I2-PT0D
1 2-TEXT
12-HCAL
1 2- PACK
1 3- PTBL
1 3-PTBL+
INC. WITH PTAL
1 . 00 + 0.06+ 1 . 00
INC. WITH TEXT
INC. WITH TEXT
3-00+0. 18+1. W0
3-00+0. 18+1.00
INC. WITH PTSL
1 .00 + 0.06+ I . 00
INC. WITH TEXT
3.00 + 0. 18+ 1 . 00
3.00 + 0. I 8+ I - 00
INC. WITH PTSL
I . 00 + 0. 06+ 1 . 00
INC. WITH TEXT
3.0
0. 18+1.00
3.00+0. 18+ I . 00
INC. WITH PTSL
I .00+0.06+ 1.00
INC. WITH TEXT
5. 00+0. 30+ 1 . 00
6.00+0.36+ 1 . 00
6502 RFPR
PAPER TAPE OBJECT CODE
REQUIRES ROBERT
UlTERWYK'S SWTPC
MICROBASIC OPERATING
SYSTEM- INTERFACE AGE,
NOV. 1976, VOL. 1 , # 12.
PTBL+ INCLUDES SAMPLE RUN,
INSTRUCTIONS, LIST OF
VARIABLES AND LIST OF
ROUTINES.
REVISED FLOATING POINT
ROUTINES FOR 6502* BY
ROY RANKIN & STEVE
WOZNIAK - INTERFACE AGE,
NOV. 1976, VOL . 1 , 0 1 2 .
NOTE * - ORIGINAL MATH
PACKAGE FIRST APPEARED IN
DR. DOBB'S JOURNAL, AUG-
1976, VOL. 1 ,#7.
un. uvaa - o juukcvhl, hul>-
1976, VOL. 1 , #7.
6800 HISPDMUP HIGH SPEED DOUBLE PRECISON
MULTIPLICATION SUBROUTINE-
HI SPDMUP BY PERMISSION AND
COURTESY OF MOTOROLA'S
M68fr)0 USER GROUP LIBRARY-
INTERFACE AGE, NOV. 1976,
VOL. 1 , #12.
-TEXT
- HCBL
I .00 + 0.06+ 1 . 00
INC. WITH TEXT
6800 DIV16
REENTRANT 16 BIT DIVIDE
SUBROUTINE - DIV16 BY
PERMISSION AND COURTESY
OF MOTOROLA'S M6800 USER
GROUP LIBRARY- INTERFACE
AGE, NOV. 1976, VOL. I, #12.
6800 RENTMUP REENTRANT DOUBLE PRECISION
MULTIPLICATION SUBROUTINE-
RENTMUP BY PERMISSION AND
COURTESY OF MOTOROLA'S
M6800 USER GROUP LIBRARY-
INTERFACE AGE, NOV. 1976,
VOL- 1 , 0 12.
8080 HOMEC
8080 WSPG
COMPUTER OR CONTROLLER BY
TFRRY RENSON, INTEL -
INTERFACE AGE, SEPT. 1976,
VOL - 1 » #10-
STARTREK BY LYNN COCHRAN-
I NTERFACE, JUNE 1976,
VOL- 1 , #7.
WORD SEARCH PUZZLE
GENERATOR BY RICHARD S.
EDELMAN - INTERFACE, JULY
1976, VOL. 1 , #R.
8080 PGBIORHY BIO RHYTHM BY PAl'L GREEN -
INTERFACE AGE, AUG- 1976,
VOL- 1 ,#9.
'WDBIORHY B 1 0 RHYTHMS IN PRACTICE BY
WILLIAM L- DONHAN, M-D- -
INTERFACE AGE, AUG- 1976.
VOL. I, #9.
8080 BLUFF
BLACKJACK BY RICHARD S.
EDELMAN - INTERFACE AGE,
AUG. 1976, VOL.1, #9.
BLUFF BY PHIL FELDMAN *
TOM RUGE - INTERFACE AGE,
SEPT. 1976, VOL.1, #10-
6800 RABSIMB
RELATIVE ADDRESS BACK-
STEPPER IN MICRO-BASIC
BY J. HUFFMAN - INTERFACE
AGE, DEC. 1976, VOL • 1 , # 1 3 .
6800 TEFT6800 TEXT EDITOR FOR THE SWTPC-
6800 BY MARK BORGERSON -
INTERFACE AGE, DEC. 1976,
VOL. I, #13- HCAL IS COPY OF
FULL SIZE ASSEMBLY LISTING-
I 4-PTOD
14-PTAL
14-PTSL
14-TEXT
1 4-HCAL
1 4-PACK
1 5-TEXT
1 5-HCAL
1 5-PACK
I 6-TEXT
1 6-HCAL
I 6-PACK
17-PTAL < 0
8080 WPATBX
R080 LLLBI
WANG'S PALO ALTO TINY BASIC
BY ROGER RAUSKOLB -
INTERFACE AGE, DEC 1976.
VOL.1, #13. HCAL & HCSL ARE
COPIES OF FULL SIZE CODE
LLL 8080 BASIC INTERPRETER
GRAMMAR BY JERRY BARBER !■
ROYCE ECKARD - SUBMITTED BY
E. R. FISHER - INTERFACE AGE,
DEC. 1976. VOL. 1,#13(PART 1).
PART 2 PUBLISHED JAN. 1977,
VOL.2, #1. TEXT 1 IS PART 1,
TEXT2 IS PART 2 AND HCAL2
IS FULL SIZE XEROX COPY OF
BASIC ASSEMBLY LISTING
WITHOUT FLOATING POINT.
NIBL-NATIONAL 'S TINY BASIC
GRAMMAR FOR SC/MP BY PHIL
ROYBAL - INTERFACE AGE, DEC.
1976, VOL. I, #13. ASSEMBLY
LISTING PUBLISHED JAN. 1977,
VOL. 2, #1 -
SC/MP MUBAGELS BAGELS BY DR. MARVIN
WINZINREAD BY PERMISSION
S. COURTESY OF NATIONAL
SEMICONDUCTOR - INTERFACE
17-TEXT
1 7-HCAL
I 7-PACK
1R-PTAL < (
18-PTSL <
18-TEXT <
18-HCAL <
1 8- PACK t
19- PTBL < I
19-TEXT <
19-HCBL <
19- PACK i
20- PTBL < I
20-TEXT <
20-HCBL <
20- PACK t
21- PTBL < (
21-TEXT <
21 -HCBL <
21 - PACK t
22- PTBL < l
22-TEXT *
22-HCBL <
22- PACK »
23- PTBL < l
23-TEXT <
23-HCBL <
23- PACK *
24- PTBL < i
24-TEXT <
24-HCBL •=
24- PACK t
25- PTBL <
25-HCBL <
25-TEXT <
25- PACK »
26- PTAL <
26-PTOD <
26-HCAL <
26-TEXT <
26- PACK t
27- PTSL <
27-PTOD <
27-HCAL <
27-TEXT <
27-HCSL <
27- PACK t
28- TEXTl<
28-HCAL2<
28-TEXT2<
28-HCAL3<
28-TEXT3<
SC/MP NIBL
29-TEXT <
29-HCAL *
29-PTSL *
29-PTOD <
29-PTGR <
29- PACK r
30- PTBL <
3.00 +
. 18+1.0
9.00+0.54+ 1 . 50
9.00+0. 54+ 1 . 50
2.00+0. 12+1.00
INC. WITH TEXT
I . 00 + 0. 06+ 1 . 00
INC. WITH TEXT
I . 00+0.06+ I .00
INC. WITH TEXT
4.00+0.24+1.00
I .00+0.06+ I . 00
INC. 'VI TH TEXT
3-00 + 0. 1R+ 1 .00
3. 00+0. 18+1.00
1 . 00 + 0.06+ 1 .00
INC. WITH TEXT
5. 00 + 0. 30+ 1.00
1 . 00+0.06+ I . 00
INC. WITH TEXT
4.00+0. 24+ 1 . 00
1 . 00 + 0. 06+1.00
INC. WITH TEXT
4. 00+0. 24+ I . 00
1 . 00 + 0. 12+ 1 . 00
INC. WITH TEXT
4.00+0.24+1 .00
1 . 00+0. 06+ 1 .00
INC. WITH TEXT
5.00+0. 30+ 1 . 00
1 . 00 + 0. 06+ 1 .00
INC. WITH TEXT
5.00+0. 30+ I . 00
1.00 + 0.06+1.00
INC. WITH TEXT
3-0(1 + 0. 18+1.00
1 - 00 + 0. 06+ 1 .00
INC. WITH HCBL
10.00+0.36+2.00
5.00+0. 30+ 1.25
3.00+0. 18+ 1 . 50
2.00+0. 12+1.25
10.00+0. 60+2.00
5.00+0. 30+ I - 50
4. 00+0. 24+ I . 50
INC. WITH HCAL
4.00+0.24+ 1 . 50
2.00 + 0. 12+1.25
5.00+0. 30+2.00
2.00 + 0. 12+1.25
5.00+0. 30+2. 00
2.00+0. 12+1 .25
2.00+0. 12+1.25
10.00+3. 00+2.00
10.00+3.00+2.00
5-00+ I . 50 + 1 .00
2.00+0.12+ 1.00
£tftf*?ft* I ?* I » tiff
BRANCH TO PAGE 120
FEBRUARY 1977
INTERFACE AGE 101
OtGi-KtY CORPORATION
Quality Electronic Components
Double-Digit Discounts
Save You Even More
2102-1 8080A LM3909
$1.99 $24.95 69c
NATIONAL SEMICONDUCTOR CLOCK MODULES
"Assembled mnd tested. The IC
& other parLs arc on the buck of
these compact modules."
MAI 01 OA 12 Hour (AM-PM) Version . . . $13.00
MA1010C 24 Hour Version $13.00
MA1002A 12 Hour (AM-PM) Version $10.50
MA1002C 24 Hour Version $10.50
, >5.. LED Dig"*,
y High i{DO|gJ^
niformor and 6 switches,,
d with module add $3*45.
Special transformer and 6 switches
hen ordered with module add $3.45
Hobby-Wrap-30 $5.95
Stfioij Wropt tad UiMrepi 30 j*. mitt an tteitdard wl™ wrap prig pim
UNWRAP
MA 1002 & MA 7070 Series
Electronic Clock Modules
The MA1002 & MA1010 Series Electronic Clock Modules
are assembled and pretested modules which combine a
monolithic M0S-ISI integrated clock circuit, 4-digit LED
display, power supply ond other associated discrete com-
ponents on a single printed circuit boord to form o complete
electronic clock movement. The user need add only a trans-
former and switches to construct o digital clock for applica-
tion in clock-radios, olorm or instrument panel clocks. Time-
keeping may be from 50 or 60 Hz inputs and 1 2 or 24 hour
display formots moy be chosen. Direct LED drive eliminates
RF interference. Time setting is made easy through use of
"Fast" ond "Slow" scanning controls.
The MA1002A ond MA1010A hove a 12 hour display with an
AM and PM indicator. The MA1002C ond MA1010C hove o
24 hour display.
Feotures include olonn "on" ond "PM" indicators, "sleep"
and "snooze" timers ond variable brightness control capa-
bility. The modules are extremely compact, the MA1002
measuring 1.375" by 3.05", the MA1010 measuring 1.75"
by 3.75". This small size is ochieved by bonding the l.C.
to the back of the circuit boord.
IE \i highly rtfommendttl nut lire tfonsJiininF bfr obtained
with the clock Fiodulfl 01 il ii a special dual sflconAnf
lype not BtharwKe readily avofabl*.
Double Digit Discounts Save You Evert More!
ACE201-K
$24.95
1,033 SOL DE fit ESS PLUG
CAPACITY: BP TO 12
TWO 5-wOir b'Mmo p*jn
%\tt: 4-fl/lo- b¥ f*
ENTIRE ROCKWELL CALCULATOR LINE
ON DISCOUNT IN OUR IATCST CATALOG
INTEGRATED CIRCUITS - TTLr CMOS, LINEAR 4 HOS
7400 .21
7476
.32
74181
2.15
4012 .23
4520
1.14
7401 .21
7480
.70
74182
.79
4013 .40
4527
■ 5-5
7402 .21
7482
.70
74184
2.19
4014 .96
4528
BS
7403 .21
7483
.70
74185
2.19
4015 .96
4585
■ :n
7404 .21
7485
.89
74188
3,50
4016 .40
2102-1
■i «
7405 .21
7486
.28
74189
3.50
4017 T.05
B0B0A
7406 .25
7489
2.19
74190
1.23
4018 1.05
CA3046
75
7407 .25
7490
.44
74191
1.23
4019 .23
LM2111N
1.25
7408 .21
7491
.70
74192
.88
4020 1.14
LM309K
7409 .21
7492
.44
74193
.88
4021 1.14
LM324A
,
7410 .21
7493
.44
74194
.88
4022 .96
LM340T-5
i
7411 .21
7494
.70
74195
.68
4023 .23
LM340T-6
i
7412 .21
7495
.70
74196
.88
4024 .84
LM340T-8
I.2S
7413 .25
7496
.70
74197
.88
4025 .23
LM340T-12
7414 .89
74100
1.28
74198
1.49
4026 1.68
LM340T-15
7416 .25
74107
.30
74199
1.49
4027 .40
IM340T-18
\.n
7417 .25
74109
.33
74251
1.09
4028 .89
LM340T-24
i.7i
7420 .21
74121
.35
74279
.55
4029 1.14
IM39O0N
a
7421 .25
74122
.44
74365
.67
4030 .23
LM3909N
.«
7423 .35
74123
.61
74366
.67
4033 1.51
MC1456V
! >X
7425 .35
74125
.40
74367
.67
4034 3.50
MC1458V
.53
7426 .25
74126
.40
74368
.67
4035 1.14
MC3302P
''.15
7427 .33
74132
.70
8093
.40
4040 1.14
NE536T
5.24
7428 .28
74141
.88
8094
.40
4041 .79
NE540L
7 04
7430 .21
74145
.70
9095
.67
4042 .79
NE555V
.■16
7432 .25
74147
1.63
8096
.67
4043 .70
NE556A
Bfi
7433 .30
74148
1.30
8097
.67
4044 .70
NE560B
7437 .25
74150
1.16
8098
.67
4046 1.86
NE561B
3?:
7438 .25
74151
.70
75150
1.16
4049 .40
NE56 2 6
!
7440 .21
74153
.65
75450
.88
4050 .40
NE565A
i 25
7442 .53
74154
1.03
75451
.61
4051 1.26
NES66V
■ 5^
7443 .63
74155
.70
75452
.61
4052 1.26
NES67V
1 36
7445 .70
74156
.70
75453
.61
4053 1.26
UA709CV
M
7446 .70
74157
.70
75454
.61
4060 1.58
UA710CA
44
7447 .70
74160
.88
75491
.81
4066 .79
UA711CA
$3
7448 .70
74161
.88
75492
.84
4071 .23
UA723CA
til
7450 .21
74162
.88
75493
1.09
4072 .23
UA733CA
71
7451 .21
74163
.88
75494
1.19
4073 .23
UA741CV
ii
7453 .21
74164
.96
82S25
2.19
4075 .23
UA747CA
;S
7454 .21
74165 1.15
4000
.23
4081 .23
UA748CV
:«
7459 .21
74166 1.26
4001
.23
4082 .23
UA7805CU
1.25
7460 .21
74170 2.64
4002
.23
4502 .79
UA7806CU
1.2:
7470 .30
74173 1.42
4006
1.23
4510 1.14
UA7808CU
1.2:
7472 .30
74174
.98
4007
.23
4511 1.05
UA7812CU
I.3S
7473 .30
74175
.93
4008
.79
4514 2.80
UA7815CU
\.v,
7474 .30
74176
.79
4009
.44
4515 2.80
UA7818CU
'..ii
7475 .49
74177
.79
4010
.44
4516 1.23
UA7824CU
1.2:
.70
4011
.23
4518 1.14
SILICON TRANSISTORS
Battery "
wife
wrapping
tool
3M'lJiTK WITH HIT
ANI> SL.E JiVl;
WIRE WRAPPING WIRE IN BULK
(ltd ftr filsck 10 Sb, KYr«r
100' $2.00 500" S5.50 1 KM' SI 5.00
SLIDE SWITCHES
Single Pole Single Throw
.IS 1-20/10 10.00/C
Dqwblfi Pole D«L?fe Throw
BATTERY HOLDERS
l-AA . . . 2*e
3-AA ... 43c
1-C. . . . 35c
IC .... 43c
10,,., 35c
*D . ♦ . . 42c
PERF BOARD
| 0.1" Spacing hn-lwcnn h a I n i
41* "* b" 11.71
BISHOP GRAPHICS Printed Circuit Drafting
Aids are now available from Dlgt-Key
RADIAL ELECTROLYTICS
.47/50V.
.08
.65/10
22/50V. .
12
1.00/10
IrSOV . .
.08
.65/10
10O/6.3V. .09
.75/10
2.?/50V.
.08
.65/10
100/10V.
10
.77/10
3.3/50V.
.08
.65/10
100/16V .
.11
.85/10
47..3SV
.08
.65/10
100/25V .
13
1.10/10
Aim.
.08
.68/10
100/50V.
21
1.71/10
IO/16V .
.08
.65/10
220/10V.
13
1.08/10
IO/25V .
.08
.65/10
220/16V ,
.15
1.16/10
10/5OV .
.10
.75/10
220/25V .
21
1.71/10
23M6V .
.08
.67/10
220/50V.
29
2.35/10
ttilW .
.09
.70/10
330/10V.
15
1.16/10
330/16V .
21
1.66/10
330/25V .
470/10R.
470/16V.
470/25V .
1000/10V
1000/16V
1000/25V
2200/1 OV
2200/16V
22O0/25V
33O0/16V
.23 1.86/10
.21 1.71/10
.23 1.81/10
.29 2.35/10
.24 1.96/10
.29 2.35/10
.42 3.33/10
.42 3.33/10
.54 4.30/10
. 58 4.67/10
.89 7.14/10
TERMINALS
f er above pflrf bwrd
LED LAMPS
N&L5053 T-l V* M J1S/C
NSLSOM M -18 Hfrt
LED DISPLAYS
AXIAL ELECTROLYTICS
.47/10V
1/30V .
3.3/35V
3.3/50V
4.7/25V
4.7/35V .
4.7/50V .
10/25V. .
10/50V. .
22/16V. .
22/25V. .
22/50V. .
33/16V. .
. 12
,90/10
.90/10
.95/10
12 1.00/10
11 .90/10
12 .95/10
12 1.00/10
12 1.00/10
14 1.15/10
12 1.00/10
13 1.05/10
17 1.32/10
12 1.00/10
aim .
33750V. .
47/1 6V. .
47.' 25V. .
47/50V. .
ifflTOV
100,'W/.
1QW2SV.
ioo/sov.
sttflov .
220/1 &Y.
' . •
mnw,
-n i.tsno
.It 1.5.2/10
.14 1.15/10
17 1 .30/10
31 1,17/10
. M 1.33/10
.)? 1.30/10
.20 F.55/TO
.» 2.30/10
. IB T.«/1t>
.20 T.S5/1&
2.35/10
.40 VBJH
.14 l.WIt)
330/I6V. .29
JX/2SV . . 32
470/lOV . . 32
4T0/25V. . 37
1 000/1 0V . 33
1 0OO/1 flV , 39
mom , 56
tt»/10V . so
2200/1 6V .62
2200.25V . 79
3300/16V . 95
470O/16V1.O9
10000/1 OV 1.15
2.35/10
2.54/10
2.55/10
3.00/10
2.65/10
3.15/10
4.50/10
3.96/10
4.95/10
6.36/10
7.63/10
8.70/10
9.19/10
;N::v5- CC .375" .
TNDSOO CC .500" .
FND 507 CA .500.
f.Norao cc .eoo- .
IHDB07 CA .BOO" .
SILICON DIODES
N4001
.64/10
5.50/C
N4002
.66/10
5.60/C
S5i m
N4003
.68/10
5.80/C
N4004
.70/10
5.95/C
N4005
.82/10
7.05/C
N4006
.90/10
7.75/C
N4O07
.99/10
8.60/C
477/M
1N4148
.40/10
3.50/C
S29/M
MPS918, MPS930. MPS2222A, MPS2369A, MPS2712. MPS2907A. MPS3392.
MPS3393. MPS3394, MPS3395, MPS3563. MPS3565. MPS3638, MPS3638A.
MP53640. MPS3641, MPS3643, MPS3645, MPS3646, 2N3904, 2N3906, 2N4124,
2M4126, 2N4401, 2 N4403, 2N4410, PN4888 , 2N5087, 2N5089, PN5129, PN5133.
PN5134, PN5137, PN5138, PN5139, 2N5210, PN5964 .... 16, $1.55/10, S13.6O/1O0
of some port no.
MPF102 .36 S30.60/C 2NS457 .48 S41.00/C MPSA13 .28 S24.00/C 2N3055 .99
S85.00/C
Double Digit Discounts
Save You Even Morel
V2 WATT ZENER DIODES
WIRE-WRAPPING TOOL
$5.95
Wraps. Unwraps A
Strips 30 ga. Wire
y* & y2 watt 5%
CARBON FILM RESISTORS
Se each In multiples of S per value
$1.70/100 L $12.00/1000 of lame value
1 ohm thru 1.0 megohm
LC SOCKETS
•■ -
'. ■
1 N523SV
3.3v 15 IIT/C
3.fiy .15SI1/C
3.9 v .15$llj'C
4.3v 15SI1/C
4.7* .15H1/C
" -5SI1/C
5.4v .15 S11/C
6.Qv .15 SllrC
fi>,l5Sll/C
UJ5236B7.5v.15 $11 /C
1N52378 8.2v.l5$llj'C
1N52388 8.7v .15 $11^
1N52398 9.1v .15 $11/C
1N52408 lOv .15 $11 K
1N5241B 11 v .15 $11/C
1N5242B 12v .15 $11/C
1N5243B 13v .15 Sll/C
1N5244B 14v .15 $11/C
1N52458 15v .15 $U/C
DATA BOOKS
TTL IC * Sn p $4.00
irntflr IC i 957 p. $5.00
CttK IC'f 154 p. $3.00
Trantittsri 2B3 p. $3.QQ
Memory \Ci 5?3 p. S3.00
Intorfooo IC'i 464 p, $4.00
Voli, Regs. 128 p. $3.00
Linnnt Appl. 1 433 p. $4.00
Linear Appl. 3 344 p, $3.00
Audio 19& p. $3.00
HARDWARE
2-56 1/4 Screw .99/C 7.20/M
2-56 1/2 Screw .99/C 7.65/M
4-40 1/4 Screw ,55/C 3.60/M
4-40 1/2 Screw .60/C 4.05/M
6-32 1/4 Screw .65/C 4.40/M
6-32 1/2 Screw ,75/C 4.85/M
8-32 3/8 Screw .90/C 5.85/M
8-32 5/8 Screw .99/C 7.00/M
2-56 Hex Nut .55/C 3.60/M
4-40 Hex Nut .55/C 3.75/M
6-32 Hex Nut ,60/C 4.00/M
8-32 Hex Nut .60/C 4.15/M
No. 2 Lcckwosher .85/C 5.75/M
No. 4 Lockwosher .45/C 3.00/M
No. 6 Lockwosher .45/C 3.00/M
No. 8 Lockwosher .45/C 3.00/M
8 Pin Solder .17 1.60/10
14 Pin Solder .20 l.W/10
16 Pin Solder .22
18 Pin Solder .29
24 Pin Solder .38
28 Pin Solder .45
2.1 a.- 10
2.75; 10
3,60/10
4 25 10
40 Pin Solder .63 4.00/1 0
2,30/10
2.50/1 0
2-B5/10
8 Pin W-W
14PinW-W ,26
16 Pin W-W .30
18 Pin W-W .60 5.70/1 0
24 Pin W-W ,96 9.10/10
28 Pin W-W 1.12 IO.O0/10
40 Pin W-W .92 fUSlK
DOUBLE-DIGIT DISCQIMT SCHEDULi
MwxfcgndlM Dbcavnt MmfctntU* Dtewirt
S O.00 J24.99 NET SlOO.0C5499.99 L«i 15%
SS0O.OO Sm99 L.si30%
S25.99-S99.99 Less 10% S 1000 .00 & Up Um 25%
Than AM th« Standard Chorg* Balow
STANDARD SHIPPING/HANDLING CHARGE
If four in«rchandiM tofnl sftir di«o«nt It Utwtin
S 0.00-S 4.99 . . odd J2.00 S 50.00 S99.99 . odd S0.25
S S.00,S24.99 . . odd S0.75 $100.00 i up . . NoChoree
S25.00 $49,99 .. add $0.50
iKlwbl dipping qnrf in*wr«K* to U$A ft Cmti*
cod aitoEits Acarrio fh same oat
wm »^ "Only Quality Components Sold!*'
DON'T FORQtT TO APPtr O/SCOUNT SCNfOUU
DIGI-KEY CORPORATION
Box 677, Thief River Falls, MN 56701
211-U146H
102 INTERFACE AGE
CIRCLE INQUIRY NO. 58
FEBRUARY 1977
BASIC Algorithms for
Common Math Functions
By Michael P. Burton (BAFCMF)
Some smaller versions of BASIC utilize standard
floating point arithmetic but do not contain the com-
monly used math functions sine, cosine, ex, log e and
square root. All of these functions except square root
can be expressed as series, which are easily converted
to algorithms written in BASIC. For the square root
function, there is an approximation method which can
also be written as a BASIC algorithm. The following
routines are the algorithms for sin(x), cos(x), exp(x),
ln(x) and sqrt(x). Please note the constraints placed on
the values of x. Within the given boundaries of x. the
routines are accurate to seven digits.
The following BASIC program was developed for
SWTP's 6800 Microcomputer and runs on the SWTP's
standard 4K BASIC Interpreter version 2.0 with float-
ing point.
INTERFACE EQUIPMENT; SWTPC CT1024 with
SWTPC's AC-30 Cassette Interface.
SEE MICROCOMPUTER SOFTWARE
DEPOSITARY PROGRAM INDEX FOR COPIES OF
THIS PROGRAM
BASIC ALGORITHMS FOR COMMON MATH FUNCTIONS
SYMBOLIC NAME: BAFCMF
PROGRAMMER: MICHAEL P. BURTON
MICROCOMPUTER: SWTPC 6K00
INTERFACE EQUIPMENT: SWTPC CT1024 WITH AC-3M
CASSETTE INTERFACE
SUPPORT SOFTWARE: SWTPC AK BASIC
1000
1005
1010
1015
1020
1025
1030
1035
1040
1045
1050
1055
10 60
1065
1070
1075
10 80
1085
1090
1 100
1 105
1110
111S
1 120
1125
1 130
1 135
1 140
1 145
1 1 50
1 1 55
1 1 60
1 1 65
1 1 70
1 175
1 180
1 1 85
1 190
1200
REM SIN ALGORITHM
REM X=INPUT ANGLE EXPRESSED IN DEGREES
REM X1=RESULT CX1=SINCX))
REM -180. 0<=X<=1 80.0
LET N 1 = 1
LET N2=-l
LET X1=0.0
LET X2=1.0
LET X3=X* (3. 1 4 1 59265/ 1 80 .0 )
IF X>=(-180.0) THEN IF X<=180.0 THEN 1055
PRINT "SIN BOUND ERR"
FOR N=l TO 15
LET N 1 =N 1 *N
LET X2=X2*X3
IF N= ( INT (N/2 ) *2 ) THEN 1085
LET N2=INT(N2*(- 1 ) )
LET X1 = X1 + (X2*INT(N2))/(INT(N1 ))
NEXT N
RETURN
REM COSINE ALGORITHM
REM X=INPUT ANGLE EXPRESSED IN DEGREES
REM X1=RESULT (X1=C0S(X))
REM - 1 80. 0< = X<= 1 80.0
LET N 1 = 1
LET N2=l
LET X 1 = 1 . 0
LET X3=X*(3. 14159265/180.0)
LET X2=X3
IF X>=(-180.0) THEN IF X<=180.0 THEN 1155
PRINT "COS BOUND ERR"
FOR N=2 TO 16
LET N1=N1*N
LET X2=X2*X3
IF N<> (INT(N/2)*2) THEN 1185
LET N2=INT(N2* ( - 1 ) )
LET X 1 =X 1 + (X2* INT (N2 ) )/ ( INT (N 1 ) )
NEXT N
RETURN
REM EXPONENTIAL ALGORITHM
1205 REM X=EXPONENT OF E
1210 REM X1=RESULT (X1=EXP(X))
1215 REM -5.0<=X<=22.0
1220 LET N 1 = 1
1225 LET X 1 = 1 .0
1230 LET X2= 1 .0
1235 IF X>=(-5.0) THEN IF X<=22.0 THEN 1245
1240 PRINT "EXP BOUND ERR"
1245 FOR N=l TO 51
1250 LET N1=N1*N
1255 LET X2=X2*X
1260 LET X1=X1+X2/(INT(N1 ))
1265 NEXT N
1270 RETURN
1300 REM LOGARITHM ROUTINE
1305 REM X1=LN(X)
1310 REM 0. 1 <=X<= 10.0
1315 LET X1=0.0
1320 LET X2= 1 .0
1325 IF X>=0.1 THEN IF X<=10.0 THEN 1335
1330 PRINT "LN BOUND ERR"
1335 FOR N=l TO 51
1340 LET X2=X2*((X-1.0)/(X+1.0))
1345 IF N = ( INT (N/2 ) *2 ) THEN 1355
1350 LET X1=X1+X2/INT(N)
1355 NEXT N
1360 LET X1=2.0*X1
1365 RETURN
1400 REM SQUARE ROOT ALGORITHM
1405 REM X=INPUT VALUE
1410 REM X1=RESULT (X1=SQRT(X))
1415 REM X>0.0
1420 IF X>0.0 THEN 1435
1425 PRINT "SQRT BOUND ERROR"
1430 RETURN
1435 LET Xl=X/2.0
1437 LET X3=0
1440 LET X2=(X/X1-X1 )/2
1445 IF X2=0.0 THEN RETURN
1450 IF X2=X3 THEN RETURN
1455 LET X1=X1+X2
1457 LET X3=X2
1460 GOTO 1440
9999 END
4K Low Power Static RAM Board
Kit $79.95
FULL HIGH IMPEDENCE BUFFERING • 4.5" x 6" WITH STD 44
PIN GOLD-PLATED EDGE CONNECTOR • MILITARY QUALITY
PC BOARD WITH PLATED THROUGH HOLES • 450 NS. LOW
POWER 2102 RAMS • ON-BOARD ADDRESS DECODING
INCLUDES FULL DOCUMENTATION
6800 OEM Prototype Sets
42.50
PROTOTYPE BOARD (With Sockets)
See September issue, p. 72 for details.
LOW COST 6800 STARTER SET
Includes board, sockets, 6800 CPU, 6810 RAM,
6820 PIA, address decoder, documentation for
minimum system.
NEW 1K RAMS at Surplus Prices
Check Date Codes and Compare
84.95
2102-1 1.45
RAM
PROMS
E PROMS
Organization
IKjcI
256x1
512x8
256x4
256x8
Access Time
450 ns2102
45 ns low pwr
100 ns
80 ns
1 ms
Price
1.45
3.90
16.00
3.00
10.00
25.00
1.75
7 segment LED displays .3" high. Very bright 1 tube (25)
Octal and decimal decoder with 4 bit latch
and constant current drivers for above displays
DISCOUNTS AVAILABLE AT OEM QUANTITIES
KATHRYN ATWOOD • Calif. Residents add 6 sales tax
ENTERPRISES • For total orders less than $25.00
P O BOX 5203 add *1,25 8n|PPin0 and handling
ORANGE CA 92667 Est'mat«d shipping time 7 days ARO
CIRCLE INQUIRY NO. 54
FEBRUARY 1977
INTERFACE AGE 103
SOFTWARE SECTION
MICROCOMPUTER DEVELOPMENT SOFTWARE
BASIC FLOATING POINT MATH PACKAGE
Part 3 of LLL 8080 Basic Interpreter Program
By David Mead
and modified by Hal Brand and Frank Olkan
INTRODUCTION
This article is Part 3 of a series of four articles cover-
ing the LLL 8080 BASIC Interpreter program released
to the public domain by Lawrence Livermore Labora-
tories. It includes the BASIC Floating Point Math
Package assembly listing.
[Win fJff" Ai*,t<"ni PI
Of rn
3F f a
ooco
003F
0'>03
0906
0'i09
39 )C
090F
0*512
39 I 5
09 18
0<»l 9
0914
)9 in
091F
0921
J9?7
09?a
09 2 R
)<) 2 C
092F
0930
30 31
093?
0935
09 36
09 3 7
39 38
0<>3ft
J93E
094 1
09 4 2
09'. 3
0') 4 4
39 4 7
0948
0949
3<3'tC
0<">0
395 3
09 51
CI 69 oc
CD OA OA
C2 12 09
f. f E2 OA
CA AB )H
C3 Ar OR
Ci) E 2 OA
CA 5B )C
CA 5H OC
Cf» 01
C 3 4 4 or
• . 1 FORhfiS x n page :
CtiyPANlllN FILE rOrt UA$«:)
CONTAINS rLIIAMrjG t'QlNT "OUT I NFS AND S^lMF
UT II I1Y ki'JUrl NFS.
////FICATlNG IMIIM PACKET rr:R THE MCSrt
////UY I3AVIH MEAI)
/ / / /Ml) C 1 F ICC MY HAL SCAN'} 9/6/74
////mooif I rn fop 2-. "IT .mant issas*****c*««»
////ihuS Ai:nro i/a comvehsicn fnunNfS
////NF* POUT INF CPMf-FMS
/ / / / A R F I'RECl LD-H) RY /
////niHFW CHVMGFS Ai; F NOT 13 BY
////Mr.oiriEn hy fpank r:iKf\ o/crs/75
FOU
FUU
ron
rou
VJ-I
s n tm
//// DlVlOF SUfMtPUTlME
call rsicv
CAtl ZCHK
jnz ttst?
CALL P.Chk
.j; i Milt;
Jmp VsZi-ec
CALI ftCMK
LIFLwr
HOV F , L
MfJV L,C
CALL DCLP
MO v L , f
Call emu
'*ov i ,c
CALI DLSr
MV I n , 2 3
mhv l ■ F
CALI ENT2
OCP D
jz oncn
MOV A , L
MOV L , C
'*<}\l C , A
CALL Dl.ST
MOV A i L
MOV E , C
nnv C , A
JMI> RFP3
CALL ACPS
J M CHIN
MOV A i L
MOV L , C
MOV C . A
CALL DLST
MOV C, L
MOV L i E
Call ldcc
RE T
; C 3 ^r>tj T F S i Cf. OF PF SUL I
; CHECK IF C IVIDFNO = Z« R<j
I IF .3 I V I l)E ND .Mt . 0 CHL(.k 01
iCtlTCK TOP ZtRL/ZFRO
;ZEvn/zc«r - indefinite
; ZEP'l/M )N< E PO = ZEP )
; r 3MF H F P t If 0 IV IHENO .UT .
; N 3rj£FK O/zr PC. ; OvtKf LCw
; IF WF CIET h-FOf . THINGS I Gjk
;SavC hasf in [
;R4SF?£, TCI I
;CLEAP OlIHHiNT ffi"!T(SSA SUIT
;FFSTnt,r a ASF IN L
;r.n first r.v( lt
ipas*: ?<i in l
;mOvf 0UO11LNT 0VF3 L Nf PLACE
<:\uMtirp ijr it fpat ions to n
;POVE 011:1 T I It T
;CPTP TO A
; lp v> ic r
;CPTR Tn r
ICHFCk IF PFSULT IS Nfltf
CALL
SUM
CP!
JZ
a n i
CALI
«r t
f FCHF
;ipt" n a
;Cf T<J TO L
;lptp. Tn r.
;SmIFT ouotifnt left
;CJMPUT[ THE ChAQACTEP 1ST IC
;f,|- T A=ChAP I h , I. ) i F = f HA
;NFW CHAP * CHARlCIVIOcND -
ifHCFK MAX DQS1TIVF NUMHfcS
; JUMP ;iN GVEPFLOw
;AD(3 1 SINCE *E LMO NOT LEFT
iCHFCK ANO STOCE CHAwACTCRIS
; R FT URN
//// AOOI T 10>J SU'IPHUT 1\E
(J9BJ
IM'i'.
■ynu
■■ i
h<:
S«
D'J'i 'J
ullil
iWl
l! ■« ?• J;
:■
)<)M
il'lAf
.:'■!■ i
hli
nrh<ip 7
I JiT-l
O'tH./
Olf /
Ml I
J iK "J
, *i i
D rJ 1 1 .
u'td
J'*0 1-
MDj
0'3I36
0<)0<)
09OC
J9i) r-
09F2
09ES
D9E6
09EI1
39EF
09EF
39FJ
09F1
09F2
09 F 4
09F5
39F6
09F7
09FB
)9F9
09 F A
09FC
09F0
09FE
)9FF
OAOO
0A01
CP F8 OA
15
C2 8C 09
C2 f)C 09
69
2C
6E
cn j 7 )a
CD EF OR
FE 02
C2 A A 39
C3 80 Oti
It-, 01
A?
CA 136 09
CL) C7 08
C A B9 09
C) 26 Ort
CO FF 09
C) F 7 3fl
CO 51) OB
132 OF 09
CO 8D OC
rO FF 3<J
CD 06 Qii
02 02 OT
CD F8 OA
C ) U6 OB
r.9
SU'* 0
ANI 12
MOV 0,
MVI A,
CMI» 0
JNC SH
MVI 0,
OR/i A
CAl I C
ncu r»
jnz s»
MOV A,
Cmp n
JNZ EC,
MOV L ,
INR 1
MDV "
CALL
CAl L
CP1
J^Z
JMP
MVI 0. I
ANA D
JZ AF3DZ
CALL TSTP
JZ SUOZ
MOV A, L
MOV L , 3
MDV B i A
CAl I OSUB
CAl I MANT
CALL TSTR
L, M
LASO
ACPR
JZ
h ORH
MCV A i L
Mnv i , n
^nv h . A
MOV A , C.
MCIV CO
MiJV F . L
MOV 9 , A
CALL I XFB
MflV A , '}
nnv is , c
MOV C.A
MHV L , E
JMP NORM
SSUfiTR^CI LP14 CHAR FRO^I BPT«
;01 n FRTNCE TO D
;F .GT .S IF L . N E .!
TO L
;C PTP?1 T!D L
iPFSTOPr l
:(.H?C.K. HHAT 10
;SAVF ANSHFR
; T r ST FOR ZERO AnSwFP
;WRITE FLOATING ZfRO ANO R f T
'.WILL T T S T F(iR SUP
;0F L AN!) !i
;SiJKTRACT SMALLER f PU^' HI GGF
:SH U^ SIGN CF RESULT
.SEE IF *r MTEC TP INTLRCHAN
; i^pTR ANO L P T d
; Nri I N T F o.C h ANGf NFCESSAKY , S
; ANO RE TURN
; I N t F R t ", m \ N C E
;CPTK TO ^
;BPTR n C
;LPTP TO E
;CPTH Tfi B
;MOV^ ?tiPTF >
jNOkMAtlZE RESULT ANO RETURN
TMF I ARGtR C URACTFR 1ST IC TO ThE RFSULT
CALL
JNC
CALL
CALL
CALI
JNC
C ALL
CALL
RC T
CCMP
AD132
HCU
MAPyT
DA 1)1)
SCCF^,
0RS1
I NOP
MOV L , E
INR L
INR L
1NP L
MOV c,a
MOV A , M
AN I 127
ADO E
MOV M , A
OCR L
OCR L
DC R L
RFT
;C JM?ARE THE CHAK ACThR I ST ICS
; IF CHAPlH.t) ,GL:. CHARtH.B)
; IF CHAP I H , L ) .IT. CHAR(HfB)
iCHAR ( H » B ) TO CHARIH.L)
;CU^PUTE SIGN OF RESULT
; 400 MANTI SSAS
; IF THERE IS NO UVFLw -
;1F OVE PFL {)<n SHIFT RIGHT
;ANI3 1VCRCKENT CHAR ACTER I S T 1
; ALL OONT , St; K E T JRN
JSAVF L °TP
;C PTX TO L
;LF!AD INDEX wORO
ISCA^F SIGN
; RE STORE L PTH
!L "TR72
:T0 I.
;SAVE S IGN \t, E
! SCARF CHAR
;A:)0 SIGH
iSTC^E I'
; R F S TD'l E
K-LJ
09<,9
096C
396F
0970
0973
0974
09 76
)977
097B
0979
397A
097B
097C
09 7 F
//// SUBTRACT ION SURRUUTINF
CALL CCM^>
J I F002
MflV D i A
JC LLTB
sua F
ANI l?7
MOV O.A
MOV "
MOV
I NR
MGV
MOV
JMP
L,C
L , 1)
Nr. hk
;/**«'*SFT JP TO SUtmACI
SUUPfJUTlME LADS
FLOATING POINT \00 CP SUB
A?12S ON FN TRY7SUB
A?0 ON CNT-*Y?AOD
F-S?FiFI»ST OPTR TESTDOYFO
BASE ?l 1 USFT FFIR SCRATCH
iSAVf FNTRY PMT AT BASE ?6
; cnrCK aodfno/su'jtk ahend * z
;IF SO, °E SULT= ARC SO RCTUPN
;TMIS «ILL PREVENT UMDF«TLOW
; ZFRH * rjp _ n Rr
;L.GT.« 1 F HERE
JMJFFEPF.MCr ID R
; SAVE bAS E IN E
;f. PTP T'5 L
;C PTP? 1 Tn L
;SAVF RASE IN C PTR71
;R PTR TO L
II . L T ,n IF HER t . RP Td TO i
)A 32
CD
79
3C
1 ;VSD :
CALL MSFH
0A05
BR
CMP t
OA 06
OA
34
OA
JC A'JCH
0AO<)
C2
30
JN? BBCH
OAOC
83
ADO E
OAOO
DA
22
OA
JC PM1N
0A10
CD
El
OR
CALL AORS
0A13
F2
46
OA
JP LOOO
3A16
CD
F 4
C 1M I :
CALL OCMP
0A19
OA
54
OA
JC L131
OA 1C
48
OA
JNZ L001
3A1F
3E
32
L 002 :
MVI A, 2
0A21
C9
RFT
0A22
CD
E 1
0.3
9HI N:
CALL AORS
0A25
F2
4E
OA
JP LI 28
0A28
CD
F4
Of*
COM2 :
CALL OCMP
3A2B
OA
4B
JA
JC L303
0A2E
C2
51
OA
JNZ L129
OA 3 I
C3
IF
OA
JMP L002
3A34
C )
E 1
OB
■. W :
CALL AORS
0A37
FA
4 6
OA
JM LOOO
3A3A
C3
16
3A
JMP CCMl
0A30
CD
E 1
OR
B3Ch:
CALL AORS
0A40
FA
4F
OA
JM L12R
0A43
C3
28
3A
JMP CCM2
0A46
AF
LDOO:
XRA A
OA 4 7
C9
RF T
0A48
3F
01
LflOl:
MV 1 A , I
OA'tA
C9
RET
JA4B
3E
J3
L 30 3 :
MVI A . 3
SUI3PIHIT IN." I ,ASD
UTILITY ROUTINE FOR t ACS
CALCULATES tpijl- ClPrP ANO SGN
RFTUIH1S ANSk-F" ^1
;F rirn vA^.T S 1GNS , F IN A , D
•.CiJMPliPh SIGHS
;F?,1- '^r-\NS GO TO A PfANCH
IF- '^7 ^F.VJS GO IT B BRANCH
;SAMf SIGN IF HEFF, A DO SIGfiS
;IF -JOTH MlfJUS. WILL OVERFLEW
iBPTH "t:s IF KfPf
; I F AN Al 1, LTAO 0
;CUMi>ARF " WITH S
:S.GT.F,SO LOAD 131
5F.GT.StS0 tC;AO 1
; f P^flR CONDITION, Z ERO ANSt.tR
JCHFCK EOF AOO CK SUR
: ADDt so loa:) 12s
;COMf'ARF F WITH S
;S.CT .F ,<5C LOAD 3
iFGT.S.SO LiJAJ 12<>
^ E R RHR
hTT.S- S'l TEST FPk A/S
:Sl)BTRACT, Si) Lf)A[> 0
;ADO, Sn GO TO r>CMF'
:F-, S?. SO TEST FOP A/S
iSUfi
;AUO
104 INTERFACE AGE
FEBRUARY 1977
SOFTWARE SECTION
MICROCOMPUTER DEVELOPMENT SOFTWARE
0A4O
0A4E
3A51
0A51
OA53
0A54
0A56
□ r
DAY*
0* V
0A5F
0A62
0A65
0A6B
0A6B
0A6E
3A6F
0A70
OA 73
0A74
0A76
0A79
0A7C
0A70
3A7E
OA 7F
0A82
0A83
0 AB4
3A85
0A66
0A89
0A8C
OASF
DA 90
OA 91
0A94
JA95
0A93
0A99
0A9B
0A96
)AA1
0AA3
)AA4
0AA5
OAAft
3AA7
0 A A A
OAAO
OA AF
)A0 I
0AB2
0A93
3A86
OAB'l
OABE
3ABF
OACl
3AC4
OAC?
OACU
)ACR
oact
OAOO
'DAD I
OA02
0AD3
3AD4
0A05
CI 5i> 0*
CO FA OR
CI 69 OC
CO OA OA
CA AF OR
O F2 OA
16 18
C) F8 OA
OA A A 3 A
CO F8 OA
15
C2 76 OA
CI El OR
FF 80
CA 62 OC
06 01
CI 44 OC
fF CO
CA 6i 0"
O E9 3A
OADA
i) An a
oa:r
OA DC
3A0D
0 ADE
OADF
3AE2
0AE3
0AF4
3AE7
0AF8
0AE9
OAEA
9 AE^
OAFC
OAEO
3AEE
OAEF
OAFO
JAF1
0AF2
OAF J
3AF4
OAFS
OAF 6
JAF7
LI28:
L 129 :
L 131:
call rem
KNZ
CAL L OCMP
PF T
SURRPU- I'lf I MCf->
CfJ^PARFS TMF MAGNITUDE fir
TwO FLOATING PNT NJMlUfS
Z?l ?.C?I IF f.LT.5.
;Pf TURN IF NOT EQUAL
: ir eoual i Chcck mant s
//// MULTIPLY SU6R0UI INF
C SIGN
ZCHK
WZfcRC
BCHK
WZ ERC
L.C
L ^ £T
CFCH-
SUiJROUT IN E L *Ul
FLOATING '>f)INT MULT I P L V
L PTR X b PTR TO C PTP
;COmPUTC SIGN CF PfSULT ANO
;check fipst operand for zep
; zfpo • any thing = zfpc
;CriFC< SELCNO UPcRANO FOP ZF
;ANYTHING • ZEFtD = ZtoO
;SAVE l ?tr
;C PTR T« L
iclp product mani lcc s
;l PTQ TO L
:LOA0 NUMBfR I T E P A T Il'NS
:SHIFT L PTP R IGHT
IWILL AOD 3 PTR If C?l
; 1 NTE PCHanGE
;L ANO
;C PTRS
;SHIFT PPO'lULT PVF°
; Interchange
;L ANO f. PTPS?bACK TO
; op ig I n al >
; MORE CYCLFS ir Z?0
; TTST IF FFSULT IS NORMAL IZF
; If NrWAllZED CO CCMPUTE Ch
;SAVE LPTP IN E
: SET L =C PI rt
EFT Shift . .
. .. F S T 0 R F LPTP
; OTuE RW I SF SFT A=ChAR(h,L),
; CHAR ( ^ ESUL T J = CHASiH.L) ♦
;fnrCK FPF SMALLEST NEGATIVE
; IF SO THtr, UNO FH FLO*.
; su? tra r t i to co«pfnsatf fp
; check characteristic and st
; fe turn
CALL
JZ
MOV F ,
"10V L . C
CALL OCLR
MOV L , E
IV I Df 24
-•H: CALL FIRST
JC MAUD
«0V A , L
MOV L.C
MOV C , A
TP: CALL ORST
MOV A ,L
MOV L.C
MOV C.A
OCR D
JNZ KPGO
CALL ftU
JM L M
MOV
MOV
CALL
MOV
CAI L
Aor>
CPI
JZ
SUI
CALL
RET
HO: *4UV A . L ; I NTFRCHANGF
mhv l.C :t ano
MOV C , A ;t PIi",
CALL CAOD ; ACCUMULATE HRf PUCT
JMP INTP
SUBROUTINE NORM
THIS SUBROUTINE WILL Ni:P"AL[Zf A ) LP AT I NG POINT
NUMBER, P&ESFtVlNG ITS Dklf.lNU SIGN.
wc ChFTk rn° '. INOFRF LCV. AND SFT I HF frNOITIOM
FLAG APPROPRIATELY. t Si F FF ROF RFTJRNS).
THFR IS AN FNTP.Y Ofj^jT TO FLMAT A 5 I GNH) !\TEGc^
(FL')ATJ ANO AN FNTRY Pl;IM !T TIIIAT Ar; U MS I L F D
I NTFGEP .
FNTRY POINTS:
Nf)RM - NORMAL IZF r L 1 1 !\ T I NO PT NU'lt^FP AT |M,L)
FLOAT - FLOAT TRIPLE PlrCISlCN I'lTK.rH ir (h.L)
PPFSfyviNG SIGN Mr IN (h.L?*3
TtFXL - FLOAT UNSIGNfll (PUSIllvF) IpIpLi' Pt>fCISIf
AT (H.LI
IPFGISTFSS IIN EXIT:
A = CONOITICN F L AG (Sft f'^DP iTTUPNSl
n,F = GARBAGE
H.I*. , l-.L = SAMF AS 0\ ENTHY
MOV
CAI L
«0V
Mf)V
CALL
JZ
•^ov
INR
I N R
INR
XRA
MOV
MGV
fl'^lCH
V.UNil
'1LSI
; SAVr L Ik r
; GE r Chap | h.i i is ,s v,l Tm SIC
; SAVi (-HAP I »; o
;StST«^RI L
;C'lfCK Fi>- >\ Pit MA\T ISbA
; ir Z F- R r; >anI I SSA tmE>> l- m
; G FT "»OST SlUNiriCAMT t^YTr I
; MAN' IS S A
; SF T FLAGS
; K MOST S l.if.f ita»,t =iM = |
iMU!'"«. IS NC?." Al IZF H /.»,.; ,[
;STORr inF C^/,f- AC tf o I ST ir
;iiinf ba r,i '.»-tr.K f 30 UNOF^fL
;L l^Ai.F .-.J In MlMrj,JW CH.'.S
;lt C-rMJf.1 Tt-fN UNCFPFi'j*
; Sn Ir T "■•.*. 1 . 1 I<SA L FF T
iLtrrufi"! CnAF ACTf-csilf.
; L;'c.r
: r.T'
i*. IE.
r 1 ir Ch
SUP1 "(OUT I NE ZCMK
yJPRilUTINE ZMft-iK
INR
INR
MOV
OP A
OCR
SUf.POUT I tJC bCHK
THIS "GUTINfc
,<*< r MO V F , L
mov i .n
CALL ZCHK
MPV I ,F
PFT
INP I
INR I
MOV
OR A
RAL
■inv
DC
MOV
RAL
MOV I
OCR
MOV
RAL
MOV
RET
Ff TP I I TAT Uf.SL.V
;FIPT SAVF L IN F
; MAKE I H.l } POI NT IP. CHA6
; h\kc (H.L) PC INI TO C^AP
; "IKE < H.L » POI KT TO CHAF'
: z E Rf) ACCUVwi aicf
; ST(-PE A PL US I ♦ ] S 1 GN
; PE STORF I
;F.OTER hFFI TCi FLOAT IN TIGER
; Pd F S E-" v INC. OR I G I AL SIGf. IN
; <;E t UP CHARACTER 1ST IC
; rxi F L 3 a T The mj-'^cr
IT DETECTS
Z fRi") FLAG IF IT PET EC IS
("YTE Uf
;SET L Tii }-nk1 LAST
; SET I TII F'llNT TO LAM fYTt
;LtJAO L FAST SIGNIFICANT * Y T F
;L P'M';TS TO MIDDLE I1YTF
iU^ WITH L f A S T SIGNFICANT BY
II POINTS 10 HOST S I CNF 1 f AN T
:('f MANTISSA IDFIGINAI VALUE
;0'< IN MUST S IGNF ICV.T «YTf
iPfllJOMS bITh ZFPf F i_ A L< SrT
) FNP » L.TAT I KG PT Z f F P
, . .''.i'T1-
3 f ,.r r_. f ,t ji L
. 5i 5 \ 1 p » 1 c t r t I
; LOAj 1 t
;KILL Carry
;Slt|FT IT LEFT
ISTOKF IT
JLOAO IT
; SHIFT IT L E F I
IF CVW SET t*Y FIPST Shift
IT Hi I L 3 F. IN LSP Of SFCONU
j f • m 1 1 " t '» 1 1 1 . 5 J II r.
-./♦o-ail nrr.f tp
SU^FOUT INF URST
3 A c 8
0AF9
OA FA
JAFfl
QA<=C
OAFn
OAFF
0 A F F
Jb *J
OftOI
0SJ02
JB33
0604
0B05
0606
013 C 7
3BJ3
0809
oboa
0&0R
OBOC
mo
OBOF
OBOF
1ft 13
Oil 1
0F>12
0B13
08 14
OBIS
0B16
OBI 7
38 IB
3H19
OBI A
3 B 1 B
OR I C
3(3 10
OBIE
08 IF
3B23
0B21
0B22
0B23
0B24
3B?S
0R26
OH 2 7
0628
0B79
3B2A
0R2R
092C
3B2D
0B2F
0H2F
0630
OR 3 1
38 3?
0633
OB 3 4
3B35
0R36
06 37
0838
0B39
3D3A
0B3B
0B3C
3B3D
0836
083F
0640
ShIFIS OI)UQLf W.3PC ONE P|ACF
Tn THF
I G-< T
0B4I
0B42
0B43
0644
3845
0B47
0B49
0R4C
3B40
0B4E
0B51
0652
0B53
3856
0857
0B58
3859
0B5A
JP.Sfl
0R5E
385F
0B60
J961
0B62
^0°
E6 7F
C6 40
FE 40
R AR
MOV '
INR
MPV
RAR
MOV ;
INK I
MOV .
« AO
MOV >
MOV i
RF T
MOV
MOV
INR
INR
MOV
MOV
OiTfS N)T AFFECT li
; / o e 4 f p MHMIFIFD RIGHT ShII-T
;LOA-) FI">S1 hGFD
; DOT ATE IT RIGHT
;STnwt lT
TP
;Lf!AD SECG--r) *CF»
:SHIFT IT o|„Hl
: STORE IT
: /«** IP F < T r NS irr;
•TP
ALL C3NE TP
L , E
VL3
I ND L
ADO M
MOV M . A
MOV L , E
INR L
MOV A , M
MOV L.E
INR L
AOC M
MOV M, A
■■OV L. P
MOV A.M
MHV L , E
ADC »
MOV M, A
XRA A
MOV M, A
INP I
MOV M , A
IMP L
MOV t*. , A
OCR L
OCR L
RET
INR L
MOV A , M
MOV L , 3
INP I
INR L
SUB M
MOV L , E
INR L
INR L
MOV M.A
OCR L
MOV A.M
MOV L.B
INR L
SB* M
MOV L . E
INR L
MOV M, A
OCR L
MOV A.M
MOV L.B
SRB V
MOV L 1 F
SU"°CtlTINE DAOD
AOOS 1^0 13 TUB I E PRECISION
w-aos. r?i if TutP.F is ovkflw
;SAVf HAST IN E
;*"AS: V3 TN L
;['A<-" ?4 TN L
. ;/«*»TP
; L 0 AD S "'AHTP
;SASE TO l
" b a s E ?I Tn l
;/«"NP
; A D D T^H MAf , f 4 ? s
;STURf ANSWF=
;/ftt*TP EXTENSION
; /•*. TP - ALl DCr.E
;r;ASE ?3 T'J L
:ma\ta of s 10 a
;oASt !" I
; A^n l« I TH CA^PY
;5TF;sf a^swEF
S UbRF'UT I N E CCL?
CLFAI'S TWO SUCCESSIVE
L DC AT IONS 3F N'EMCPY
••10V
RFT
F XTENS ION
/•••"4LL NFW OSUH - SHOUT
SUBRC'UTINI- OSUB
DOim F PRFCISIPN SUBTRACT
;SAVF BASE IN E
•/ee*Tr> TxTFf.SION
./START WITH LOWS
; /NET ADG
;/NUW SFT UP TO SU^
;/P'iJT BACK
;/»»»Tp _ ALL OCNF
;/GET I OW CF LOP
; /SFT TO SOP
;/SCT TO 30P I.Gw
;/C.CT DIFF. OF LO'„S
;/SAVF IN LCP LOW
;/tq 1 up LCw
; / INTO RAM
;/EaCk UP TO LOP HIGH
;/GFT LOP HK.H
;/SET TO "tOP HIGH
;/SUH. WI TH CARRY
;/SAVE IN LOP HIGH
:/INTO P.».M
; /ALL DONE - MUCH SHUPTFK
SUBROUTINE GCMAR
THIS SUBROUT^iE RETUFNS Ti
THE FLOATING POINT NUf-'ocfl
IN THE A REGISTER W IT" it:
LEFTf4CST BIT.
REGISTERS ON EXIT:
I CHAP ACTLF I ST IF OF
POI NT FO TO BY I H.L I
SIGN CXTfNLitO INTO THF
characteristic of ih.lj v
(origin al l) ♦ 3
.D.F.H = SAME AS ON ENTdy
ITh S IGN FXTE NOEL'
A°: INR L ;MAkE IH.L) POI'.'T TO ChAP
INR L ;MA^E (H.L) POINT TO CHAP.
INR L ;MAKE Ih.L) I'OINT TO CHAR
MOV A, M ; SET A=ChAP ♦ MANTISSA SIGN
AN! 1 770 ;GET P.I D CF MANTISSA SIGN Bl
AO! 1000 ;PR0PA3ATE CHAP SIGN INTO LE
XPI 1000 iPESTORf CiPIGINAL ChA« SIGN
rft ; rf turn with |h,l) pointing
;chap. = original (h.l 1 + 3
; someone Else will clean up
subroutine cfchf
this subroutine returns the characteristics df th
floating point numbers phi nt fo to by ih.lj anf1
(h, ei in the a and e registers respectively,
with their sig^is extended into the leftmost bit.
registers pn ex i t:
a = char ac t e r i stic uf .
E = CHARACTERISTIC OF IH.R) W I Th SIGN
B.C.H.L = SAME AS ON FNTBY
C.3
GC HAR
mov
MOV
CALL
MOV
MOV
CALL
DCP
OCR
DC P
RFT
SUBRGUT I NE CCMP
;SAVE LPTP IN E
; SE T L = I3PTP
I GE T CHAR(H.e) WITH SIGN EXT
;PESTORF L = L-»TR
; SF T E = CHAk In. B 1 w I TH SIGN
;SET ArCHAF't
I RE STORE L = LPTR
; RESTORE L = L 3 T R
;PEST0PC L = LI>T°
; SET n=A=CHAP(
ITH SIGN E
L )
THIS SUBROUTINE COMPJ»PFS T He CHARACTERISTICS OF
FLOATING POINT .NJMBEPS POINTED TO RY IH.L) A Ni> (H
THE ZERO FLIP-FLOP IS SET If CHARlH.Ll EQUALS
CHARlH.B). It- CHARtH.L) IS LESS THAN CHAP(H,F\) T
THE CARRY BIT WILL BF SET.
REGISTFQS PN EXIT:
SAMt- AS ON ENTRY
MOV 0
SUB E
RAL
MOV A
RFT
FD ROR RETURNS
;FETCH CHAhAC I FFTIS TICS HIH
; I N Tn 4 ICHAPtH.L 1 1 AND f (C
; SAVF CmAP ( h,L 1
; SUBTRACT f (CHAR {H.3H
; F U T A T E SIGN BIT INTO CARPY
RESTORE A-CHArl I M » L )
; P F TURN
THE FOLLOWING CODE IS NSt!^ TC FITUPN VAP ICUS
FPPCi; CONDITIONS. IN r A C H CASE A FLOATING PUINT
NUM=5E° IS STORED IN THF 4 wOPOS P01MTFI) Tu BY [H
AND A FLAG IS STOREN IN ThE ACC'.IMUL A T 0 P .
CONDIT ION
FL AG
PFSULT
♦ I
PFSUL I
- )
UNO E H F L Cw
377
COO
•10')
DCO
1
: ( :
COC
000
OVERFLOW
1 77
377
377
?77
377
INOFF INITF
377
377
377
377
377
3 77
1 n
377
NORMAL
300
XXX
XXX
X<X
XXX
XXX
NORMAL ZERO
300
1300
00 0
OOO
1 JO
1 ALWAYS
RFTU
ENTRY POINTS:
WUNll - WRITE UNDERFLOW
WOVR - WHI T f OVERFLOW
WlNP - WRITE I NDFF I NI T c
WZER - WRITE NORMAL U R
FEBRUARY 1977
INTERFACE AGE 105
SOFTWARE SECTION
MICROCOMPUTER DEVELOPMENT SOFTWARE
0863
03 55
}Bfc3
J36A
0B60
086F
0670
0B71
3B73
)876
087fl
0B7B
0B7D
0R7F
Oi37F
JB81
3B84
0BB6
0B39
JB8B
OBBC
0B80
0B8F
JR9F
0B90
OB 92
)U93
0B96
08 9 7
JR<3F
06A0
03A1
0BA2
0RA3
0BA5
0BA6
13A7
06A3
0BA9
OB AA
OBiD
OBAE
JBAF
OBRO
OBBI
>B34
00B5
0B36
JBB9
OBBB
05BE
OBBF
ORCO
DPC3
0HC4
our. 5
0BC6
OBCB
0BC9
OBCA
OBCR
3BCD
OBCE
OBCF
ObDO
0BO1
3B02
0B03
16 <,0
O <JF OB
3T 0)
16 3F
CI 9F 08
3F FF
0SD4
JBD7
0BD9
OBDC
OBOD
OBDE
0BE1
ORE 2
JBE3
08E4
0BE5
)BE6
0BE7
0BF8
JBE9
OBEB
OBFC
OBED
OBEE
3UEF
ORFO
0BF1
0BF2
0BF3
CD 7F 08
CT 41 OB
FF 3F
CA 76 Ofl
CO 41 08
FE CO
CA 68 OB
UFLWl :
rfPVR:
UFLWl :
MV I
CALL
MVI
CAL L
MV I
OR A
RE T
MV I
CALL
MV!
CAL I
"V I
PRA
RET
MVI
CALl
MVI
CAl I
MV I
OR A
RFT
I NX
I MX
I MX
o, io:)Q
WCHAP
A.O
D, 773
WCHAR
A i 3 7 70
D, 77Q
WCHA?
At 3 7 7v
;LdAD O-tAPACTFP I SI IC INTO D R
;WITr CHAP ACTEP 1ST If
;LOAO MANTISSA VALLIT
;KF ASSUME ufPF THAT ALL BYT
;f)F Mf.NT ISSA AP F THE SAMF
; WR I TF Tut MAM ISSA
;SFT ACCUMULATOR TC FLAG
;SET FL ACS PROPEPLY
RETURN IWMANT PFSMFEU 1H,I.
WR1 TF OVERf LOW
;L0AO CHARACTERISTIC INTO D PF
;WR|Tr CHAPACTEPIST IC
;LOAO MANTISSA VALUE
;WE ASSUME hERF THAT ALL BYT
;0r MANTISSA APE THf SAMf
IWWITF THE MANTISSA
;SFT IVCCIMULATOP TO F I AC
; SET FLAGS PROPERLY
;RFTUPN IWMANT PF ST' 1PE0 (H,|
WRITE INL'EF I N I T F
;L!:ao characteristic into o he
; k' i i e chapactepist ic
;luad mantissa value
;w£ assume hlrf that all byt
;rr MANTISSA A!>E THE SAME
; WRITE THE MANTISSA
; SFT ACCUMULATOR. TO F LAG
; SET FL ACS PROPERLY
;RETUi>M ( ViM AN T PFSriPtO |M,1
0)0 : STORE CHAP ACTER I ST IC FOR Zfc
Ann a ;ZEPJ ACCUMULATCO
CALl. in M ANT ; STPHF ZEHP MANTISSA
OR A A ;SET FLAGS dRQPEHLY
RFT : ftFTURN
PPUTI\F TO WRITE MANTISSA Fi.» fcPP.JP P b TURNS
y,AfiT : OCX H ;PC1NT TC LFAST SIGNIFI
;TF MANTISSA
MOV M.A ; STOKE L SB YU 0 F MANTISSA
DCX H ;PNT TO NEXT LEAST SI^N
;PF MANTISSA
MOV M.A ; STORE MSbYTF CF MANTISSA
OCX H ;i'CIsT TU mQST SIGNIFIC
;T,F MAN I ISSA
MOV M.A ; STORE " SI* YTfc 0 E MANTISSA
PET ;PETURN IH.L) POINTS TU PEjI
; FLOAT I NT* PTINT RESULT
ROUTINE TO WRITE [".HA RACTERT IC FOR bPPUP PFTUnt,S
Nt'TF: WE PPESEHVE ORIGINAL MANTISSA SIGN
ft ENTPY D CONTAINS NEW C H AP A C T E P T I S T I C TO '^E STuREO.
:hAP: INR L ;SET Ih.L) TO PC1NT TO Ch/i«A
IN» L ;PAPT IF ABflVE
IN» L ; OAPT Or AOOVE
MOV A a m ;LOAD CHARACTERISTIC A
; A<NO MAN T I SSA S IGN
)0 ;JUST KEEP MANTISSA SIGN
IN NEW CH Ai* AC TFR I ST (I
k ; STO» E IT MCk
; Rt T URN WITH IH.L3 POINT TU
;(lf RESULT
: SOMEOfJE ELSE W 1 1 L FIX UP I H
AM
OR A
MOV
RE T
SUBROUTINE INDFC
THIS ROUTINE «RITES A FLOATING INDEFINITE. SETS
THIS WRITES W-WTES A FLOATING PI"! I\T INDEFINITE
AT <H,ri, SFTS THE CGNDITICN Ft AG AKO PFTUHNS
CALL W [NCI
MOV L , £
RET
SUBROUTINE wZERC
; SAVF. I PTii If j F
;SET L=CPTK SO I H , L ) — ADDR OF
;WP ITC INDEF If; I TE
;PFSTO^r L = L P T F
; P6 TURN
; SAVE L PTP IN E
;si:tl = cptp so ih,l]=ador ur
;w*l"F NCt^M^L zcpo
; HiF STF'HE L = LPTR
;t>FTUPN
PC: MQV f.L
MQV L • C
CALL HZEP
MOV L . E
RFT
SUBROUT INE INCR
THIS SUBFtUUTINC INCREMENTS THE CHARACTERISTIC
PF THE FLOATING POINT NUMBER POINIEE TO BY (H.LI.
wr TEST FOR QVFPFLGks A NO SET APPROPRIATE FLAG.
(SEE EiiHROR RETURNS).
CONDITION FLAG (SEE ERROR RETUPNS)
CLCBBE RED
,H,L = SA^5 AS ON FNTRY
GCHAO
MAXC<
UFLWl
[NO<3:
INCR?:
JMP II
I N P. L
INR L
INP L
MVI A, 177'
ANA D
MOV 0, A
MOV A, M
AN I 200Q
OR A D
MOV Mi A
OCR L
DC R L
OCR L
XRA 1
RET
SU^tiHUT INF DECR
:GET char * I th sign fxtenoei;
; C '1 M P A R E WITH MAX CHAK PFRM!
; INCREMENT ;*OULC CAUSE OVFRF
I/SAVE IT IN I
; / INCRt '^Ffa I T
;JUMP AROLNO ALTERNATE ENTPY
;C1ME HERE TO STORF CHAR ACT E
;I>0 1NT (H,L) TO THAR
; POINT I H, L ) TC C HAP
; /K ILL S I GN BIT
;/BACk TO 0
;/NOW SIGN IT
; /GET MANTISSA SIGN
;/PUT TOGI. ThER
;/STORE IT BACK
;/NOh BACK TO BASE
« TP
;SET SUCCESS F L AO
WE TEST FOR UNDERFLOW ANO SET APPROPRIATE FLAG.
< SEE ERPROR RFTURNS) .
PFGISTFRS ON EXIT:
A = CONDITION FLAG t SEE fPP.PR KETUPMS)
0 = CLCB8ERE0
9,C,H,L = SAME AS ON ENTKY
MOV
OCR
JMP
ORA
MOV
RE T
MVI D.?
MOV A , M
'lOV L . E
GCHAR ;GEI CHAP. WITH S I SN EXTENDED
MINCH iCOMPAHE WITH H 1 N CHAP PE>IMI
UFLWl ; IJFCP EMENT WOULD CALSF UNUEP.
D. A : SAVF CM AP AC T ER ST IC IN 11
0 ; DECPFMENT ChAS AC TF R I ST I C
INCP? ;G0 StrjFF IT BACK
SUBROUTINE AORS
SETUPN S?l IF BASF ?6
HAS A 1 IN MSB
;SAVE RASE
;BASF ?6 TO L
I ; L OAD IT
;SET FLAGS
;PESTORE BASF
SUflPHUT IHI TSTP
CHECKS C PTP TO SEE IF
N L Sfi ? 1
RETURNS Z?l IF NOT
DESTROYS E.O
;SAVE BASE
: ;c PTP to L
» ; M A SK TU 0
MOV E tL
MUV LtC
MOV M, A
*<0V L.F
PET
; AND VALUE hi TH MASK
SUBROUTINE .1CPF.
STORES t IN LTCA1 ICN CF fPTR
LPTR IN E
;SAVF LPTP.
;CPTf» TU L
; SI ORE A
;PESTO"F hASE
3HF4
OBF S
0BF6
0BF7
0BF8
3BF9
OBF A
ORFB
1HFC
OB^D'
ORFE
onrr
ocoo
3CD1
0C02
00 D3
)C0^
OCO")
0C06
QC07
OCOD
0C10
0C13
0C16
OC 17
0C1A
OC 18
0C1C
OCIO
OC IE
0C1F
0C21
5C22
0C23
0C2<t
0C2 6
0C2 7
0C28
0C29
0C2A
0C2B
0C2C
0C20
0C30
0C31
JC33
0C3-i
0C35
0C37
0C38
OC^.4
0C4A
0C46
0CV9
OC^.B
OC^.E
0C5O
0C53
0C54
0C55
0C56
0C59
0C5A
0C5B
0C5C
0C5D
0C60
0C61
0C62
0C63
0C64
0C67
0C68
CD F9 >A
DA 17 OC
CD F^ OP
D2 17 OC
MOV A,
MOV F,
MOV L.
CMP M
MOV L^
RNZ
INR I
MOV A,
MOV L •
INP L
CMP M
MOV L t
«NZ
INR I
INR L
MOV A,
MOV L .
INR L
INP L
CALL 01 SI
JC OVEP
CALL OCMP
JNC OVER
RET
CALL OSUB
MOV E,L
MOV L,C
IN« L
INR L
MOV A ■ M
A D I 1
MOV Mt A
MOV L . E
RET
MVI
MOV
MOV
A , M
■•10V L i E
MOV M , A
INR C
INP F
DCR 0
JNZ REP5
MOV A, E
SUI
MOV
MOV
SUI
MOV
RFT
SUBPOUTINE LDGP
RET. ISTERS ON EXIT:
WORDS
;NUm MftflTA TO A
ISAVE USE IN E
;RASF?3 TO L
;COMPA*t V.ITH DEN M ANT A
; R E TURN BASE TC L
IPTTUHN IF NOT THE SAME
;l TO NU.M MAMP.
; L 0 A D IT
IDF. N "".AN TP ADD TC I
;PASE? <i TO L
:/CfT rr;° compare
;/BYTE 3 NOU
; /Cf'MPARE
; TP - ALL UONF
OF OOUHL f
PRECISION FLOATING PT CIVIDF
ENTER AT ENT1 ON FIRST CYCLE
ENTER AT ENT2 ALL THEREAFTER
; SHIFT MOVING DIVIDEND
; IF CAKRY?l,NUM.GT.O
;COMPARF NUM WITH OEN
;IF CARRY NOT SET , NUM.GE .DEN
; C ALL DOUBLE SUBTRACT
;SAVF BASE IN E
; BASE ?fc TO L
; B A SE: 7 7 TC L
; / * « * T [>
;AUl) 1
;PUT IT OACK
; RE S TORE BASE TU L
SUBPOUTINE LXFP
MOVF S C PTK TO E PTP
MOVFS 3 WURI^S IF ENTER AT LXFP
;/MOVE ^ WCPDS
;CPTR Tf) L
;?CPTP> TO A
;EPTR TO L
; / I NCREMFNT c
;/INCPFMCriT I TO. NEXT
;/TFST FOP HON E
;/G0 FOP TOR TILL DO
;/N:lis- RESET C ANO E
;/PESET BACK BY 4
;/PUT [JACK IN E
I/NOW RESET C
;/BY *,
; /BACK TO C
;/OCNE
0C39 CD 4C
0C3C 93
)C3D C3
A = CONDITION FLAG [SEE FRfflR
D » E = GARBAGE
B.C.H.L = SAMF AS QN ENTPY
REGISTERS ON ENTRY :
1H,R) = AODPESS OFF DIVISOR
IH.C) = ADDRESS OF QUOTIENT
( H , L ) = ADDRESS OF DIVIDEND
;SF_T E = CHAP (H|B J i A =C H AR ( H i L
;SUPTR4CT TO GET NEW CHAPACT
;G0 CHECK FOR E>VE R / UNDER F L 0*
;ANO STORE CHARACTERISTIC
CALL
SUB
JMP
SUBROUTINE LMCP
REGISTFRS ON EXIT:
A = CONOITION FLAG ISEE FPROR RETURNS)
O.F = GARBAGE
B.C.H.L = SAME AS ON ENTRY
P£GISTERS ON ENTRY:
AODRESS OFF MULTIPLICAND
ADDRESS OF PPCDUCT
ADORFSS OF MUL T |PL ICR
5SET E=CHft«IH,B)t A=CHAP|H.L
;AOD TJ GET NEW CHARACTEPISI
;NnW FALL INTO THF ROUTINE
;WHICH CHECKS FOR OVER/UNOFP
; A ND STORE CHAP AC TE RT I ST I C
SBUROUTINE CCHK
THIS SUBPOUTINE CHECKS A CH AP AC T ER I S T I C IN
THE ACCUMULATOR FOR OVERFLOW OP UNDERFLOW.
IT THEN STORES THE CHARACTERISTIC, PRESERVING
THE PREVIOUSLY COMPUTED MANTISSA SIGN.
I REGISTERS ON ENTRY:
<H,L) = ADDRESS OF ONE OPERAND
IH.B) = ADDRESS OF OTHER OPERANO
IH.C) = ADORESS OF RESULT
A = NEW CHARACTERISTIC OF RESULT
REGISTERS ON EXIT:
A = CONDITION FLAG ISEE ERROR RETURNS)
0 i E » GARBAGE
B.C.H.L = SAM? AS ON FNTRY
FE 40
OA 53 OC
FE 80
OA 5B OC
FE CO
OA 62 JC
50
69
1000
STORC
2 no
oflw:
3000
uflw:
E.L
L,C
CPI
JC
MDV
MOV
MOV
CALL
MOV
RET
SUBROUTINE OFLWC
WC : MOV F , L
MOV L.C
CALL WOVR
MOV L.E
RET
SUBROUTINE UFLwC
MOV
MOV
CALL
MOV
RET
SUBROUTINE CSIGN
REG ISTERS ON EN TRY :
; ENTER HERE TO CHECK CHAPACT
; CHECK FOP. 0 TO +63
; JUMP I F OKAY
5CHECK FOR +64 TO +127
;JUMP IF OVERFLOW
;CHECK FOR -128 TO -65
;JUMP IF UNDERFLOW
ISAVE L IN E
;LET L PCINT TO RESULT
: SAVE CHARACTER ISTIC IN 0
;STO«E CHARACTER I ST IC
; RESTORE L
; RETURN
L=CPTR, SO ( H( L ) - ADOR 0
JWRITF OUT OVERFLOW
I RESTORE ■
; Rt TURN
5 SAVE LINE
;SET L = CPTR, S3 (H,L)=AOI)R 0
; WR t T F OUT UNDE FLOW
[H.CJ = AOORESS OF RESULT
REGISTERS UN EXIT:
106 INTERFACE AGE
FEBRUARY 1977
SOFTWARE SECTION
MICROCOMPUTER DEVELOPMENT SOFTWARE
JC69
0C6C
0C6D
3C70
0C71
0C72
OC73
0C74
0C75
0C76
0C77
0C7B
0C79
0C7A
0C7B
0C7C
0C70
3C7E
0C7F
0C81
0C82
0C83
3C84
OC85
0CB6
0CB7
0CB9
OCBA
OCBB
ocac
0C8D
0C8E
OCBF
0C90
0C91
3C92
0C93
0C94
3C95
0C96
0C97
0C98
0C99
0C9A
CO
OA
OA
3C90
C2
82
)C
OCAO
OC
OCA 1
OC
OCA2
69
OCA3
CO
80
OR
3CA6
2C
OCA7
?.C
OCAB
2C
3CA9
2C
OC AA
AF
OCAB
77
OCAC
cn
93
on
OCAF
C3
1 1
on
0C82
56
OCB3
?C
OCB4
46
3CB5
0CB6
a
OC87
2C
OCBB
7E
0CB9
OC
0C8A
OC
OCRS
69
OCBC
72
acBo
2C
OCOE
70
0C8F
?r
3CC 3
73
OCCl
2C
OCC2
47
0CC3
E6
7F
OCC5
77
0CC6
FF
40
0CC8
CA
CF
OC
OCCB
06
01
occn
F6
4 0
OCCF
07
OCOO
2C
OCOl
77
OCD2
78
3C03
CO
93
00
OCD6
2E
17
OC08
C 0
F4
00
OCOB
CO
AO
30
OCOE
47
OCOF
E6
40
OCEI
7B
OCF?
CA
CB
OC
3CE5
3F
83
OCE7
90
0CE8
FP
12
OCEA
FA
F6
or.
OCEO
CO
A6
00
OCFO
C6
05
0CF2
77
OCF3
C3
08
OC
OCF6
2E
IB
OCF8
CO
F4
OD
OCFB
CO
AO
00
OCFE
Ff
01
ODOO
F2
OC
on
0003
CO
A6
00
0D06
C6
01
0008
77
3039
C3
f B
OC
OOOC
FF
07
ODOE
F2
03
OD
0011
69
00 12
20
0013
20
0014
36
05
0016
5F
3017
CO
79
3D
001A
FE
OA
00 IC
F2
CC
00
00 IF
CO
30
00
0D22
CO
51
00
0025
CO
30
on
0028
C2
22
OD
0028
3E
C5
3D2D
CD
FO
OF
0D30
CO
CI
00
0D33
47
0034
CO
93
OD
0037
7B
OtllB
E6
3F
001A
cn
E3
OD
0030
C6
80
3D3F
cn
FO
OF
0042
69
0043
?.D
0044
20
0045
7E
0046
FE
05
0048
3E
AE
0D4A
CC
FO
OF
0040
56
004E
15
O04F
72
CALL MSFH
XRA E
CALL CSTP
RET
MflV E.L
MOV L.C
INR L
I N R L
INR L
HOV Mi A
MOV LfE
RET
;SET AsSICNlH.L), E=SIGN(H,B
EXCLUSIVE OR SIGNS TIJ GET N
; STORE S IGN I NT Li PESULT
; RE TURN
SUBROUTINE CSTR
STORES VALUE IN
CPTR72
PUTS LPTR IN E
;SAVE LPTR IN
;CPTR TO L
;CPtr?2
; TO L
; /•*• TP
SUBROUTINE MSFH
THIS SUBROUTINE FETCHES THE SIGNS nr THE MANTISSA
OF THE FLOATING POINT NUM3ERS PRINTED TO BY (H.LJ
AND (H.B) INTO THE A AND E REGISTERS RESPECTIVELY
REG I STERS ON F X I T:
A = SIGN UF MANTISSA OF I H, L )
F = SIGN OF MANTISSA CF (H,B)
B.OD.H.L = SAME AS ON FNTRY
128
MOV
MOV
INR
INR
INR
HOV
AN I
HOV
HOV E . A
INR L
INR L
INR 1
HOV A, M
AN! 128
OCR L
OCR L
OCR I
RFT
MOV
HOV
IN"
INR
INR
MOV
HOV
INR
INR
INK
; SAVE LPTO
;8PTP TO L
; BPTR72
;/»»»TP
;T0 L
;?BPTR?2>To A
;SAVE HANT SIGN
;LPTR BACK TC L
;STORE BPTH MAMT SIGN
:lpto?2
; /••• TP
; TO l
;?LPT3?2>T0 A
;SAVE LPTR MAMT SIGN
;LPTR OACK
; TO L
SUBROUTINE BCTL
Movrs rptr char to lptp chap
OESTPOYSE
;LPTR
; BPTR TO
;BfMR ?2
" • TP
;TC L
;6PTR CHA' TO A
; L P TR TO L
;LPTR 12
:to l
; /*»»TP
;STCRC RPT" CHAF
;i PTR TF' L
f // / 5 DIGIT FLOATING °T. OUTPUT
I\ I aTP Cm As
••••••*ROUT INE TO CONVFPT FLOATING PT.
♦♦•NUMBERS T3 ASCII ANO OUTPUT THfH VIA A SUBPOU
***CALLEO OUTR - NOTE: THIS IS CUPPFNTLY Sr T
•••TO OOT'S OUTPUT POUTl\E
CALL
J N 7
I NR
INP
MOV
CALL
I NR
I NR
I NR
I NR
XP.A
MOV
CAH
JMP
MOV
INR _L
MOV R, M
INR L
MOV E i M
INR L
MOV A , M
INR C
INR C
HOV L.C
MOV M.D
INR L
MOV M,8
INP L
MOV M i F
INR I
MOV
AN I
MOV
CP I
SIGN
MOSKP
0, M
;CHrCV FOP Mfh I
;N1T 7EP!I
; I 1 *AS. (•! F Sf T
;St7T IT TL JFPJ
;«*ITt OUT SIGN
:jijtput IT
;/",rt the mj^I'Ep to cr,N
; /'. wORD«*«TP
: /•*• tp
;/OFFSET SCRATCH
p0 INTER BY 2
1/70
A
TR Yl :
T ST 1 :
OKI :
MOSKP:
1 3 3Q
JZ NZRO
SUI 1
AN I 1 1 00
PLC
INR L
MOV M.A
MOV A , B
CALL SIGN
MV I L , ITEN5 4 NO
CALL CCPT
CALL GCHR
MOV B ■ A
AN I 10 30
MOV A , B
JZ GOT V
HVI A.230U
SUP B
CPI 220
JM TRYi
CALL MDRO
A D 1 5
MOV M, A
JMP TST9
MV I L , I TF N A'iO
CALL COPT
CALL GCHR
CPI 1
JP OKI
CALL MORD
AO! 1
MOV M i A
JMP TSTI
CPI 7
JP MOGN
MOV L.C
OCR L
OCR L
HVI M,5
HOV E , A
CALL LSFT
CPI 120
JP TWOO
CALL OIGO
CALL HULTT
CALL OIGO
JNZ POPD
HVI A, 3050
CALL OUTR
CALL GETEX
MOV B . A
CALL S IGN
MOV A.B
ANI 77Q
CALL CTWO
AOI 2600
CALL OUTR
MOV L.C
OCR L
OCR L
MOV A, M
CP I 5
MVI A.256Q
CZ OUTR
MOV O.M
OCR 0
HOV H.O
;/*«* TP
; /* *»TP
I/SAVF C1PY CF CHAR L SIGN
;gft Only chap.
;/SAVE ABS I NUMBER I
;CK FUR ZFRC
;/GFT SIGN Cf OfC . EXP
'■ /GF T SIGN OF CuAP.
;MOVE IT TO SIGN PUS IT ION
; /MOVE Tf? DECIMAL EXP.
;/SAVE SIGN Of FXP.
;/GET MAN T . SIGH t'ACK
;/GUTPUT SIGK
3 770) ;/TPY "Ul T . 0^ 0 I V . BY i
;/M^r A rnPY IN PA>"
; /GET CHAP. OF NUy 3FR
:/SAVE A COPY
;/GET ARSrLUTE VALUF Of ChAx
;/INCASF PLUS
;/AL*EAOY PLUS
;/mA<E MINUS INTC PLUS
;/plu$=2oob-»:hah
;/TFSt F0& USF C- 1C300O
; /WCNT GO
J/WILL GO SC OC IT
; / I NC P F M E N T f.lEC. EXPONENT BY
;/UPGATE ME*
;/G0 TRY AGAIN
3770) ;/NOW USE JUST TFN
;/PUT IT IN P AM
; /GET CHAP\C.TCP ISTIC
J /MUST GET IN RANGE 1 \h o
; / AT L EA ST ITS I C P BIGGER
;/MUST MUL OF DlV b Y 10
; / I NCREMENT OECIMAl FXP.
;/UPOATF *FM
; /NOW TRY AGAIN
;/TEST F 0 ° LESS THAN 7
;/IN 1ST WORD OF SCRATCH
1/5 DIGITS
;/SAVF CHAR. AS LFFT Sf) I F T CCiU
;/SHlFT LEFT PROPER NUMttER
;/TEST FOP 2 DIGITS HEPF
;/JMP IF 2 DIGITS TO OUTPUT
I/CUTPUT FIRST DIGIT
;/MULTlPLY THE NUMBER BY 10
;/PRINT DIGIT IN A
;/MORE DIGITS?
;/N0 SO PRINT E
;/BASIC CALL TO OUTPUT
;/GET DECIMAL FXP
;/SAVF A COPY
;/OUTPUT SIGN
; /GET EXP RACK
;/GFT GOOO BITS
;/G0 CONVEOT 2 DIGITS
; /MAKE A INTC ASC I I
;/OUTPUT OIGIT
:/CFT OIGIT COUNT
;/BACK UP TO OIGIT COUNT
;/TEST FOR DECIMAL PT
;/PRINT . AFTER 1ST OIGIT
;/JUST IN CASE
:/OUTPUT . IF 1ST OIGIT
;/NOH DECREMENT OIGIT COUHT
:/UPDATF MFM AND LEAVE FLOPS S
0050
0051
0053
0D56
0057
0058
0059
0058
005C
0050
0D63
0061
0063
0064
0066
0067
0068
006B
006C
0060
0D6F
0D70
00 73
0074
0075
0076
0D77
0078
0079
007A
0D78
0D7C
0070.
007E
0D7F
0D80
0081
3082
0083
0084
0085
0086
0DB7
0088
0089
0D8A
008ft
ODBC
0080
008E
ODBF
0090
0093
OD95
0097
0D9A
0D9C
0D9F
JOAO
00A1
00A2
0DA3
00A4
0DA5
0DA6
00A9
)0AA
OOAB
OOAC
OOAO
OOAE
0080
0DB1
0082
00B4
0DB7
OOBA
30BR
OOBC
0080
OOBE
OOC I
ODC2
00C3
0DC6
0DC9
OOCC
OOCF
ODOO
0003
0DD4
0DD6
00D9
30DA
0008
OOOC
OOOF
OOEO
0DE3
0DE5
00E6
30E8
OOEB
OOEO
OOCll
OOEF
3DF2
OOF 3
0OF4
30F5
OOF 7
OOFB
onF A
OOFO
OOFE
OEOO
OC 0 I
)E 32
0E03
0E04
3F35
0E06
0FC7
OFOB
0E09
3E)A
OEOR
OCOC
OEOO
OEOE
OEOF
OEIO
OEtl
OE 12
OE 13
0E14
3E1S
OE 16
7E
17
C3 7C 00
E6 80
3E AO
CA 9C 00
3E AO
CO FO OF
C9
69
C3 AI 00
C) 00 09
C3 BA 30
CO E3 00
47
CD CI OD
5F
E6 80
CA OF OD
06 OA
F3 E5 30
C6 OA
01 VIT:
T WOO :
RET
MVI E,l
CALL LSFT
MOV L.C
OCR L
MOV A.C
AO I 110
MOV C.A
MOV A,H
CALL COPY
MOV A.C
sui no
MOV C.A
MVI E.2
MOV L , C
OCR L
CALL TLP2
HOV L. C
mov"a:c
ADI 12C
MOV B.A
CALL DADO
OCR L
OCR L
ADC H
RET
HOV L.C
OCR L
XRA A.
HOV H . A
OCR E
RH
INR L
INR L
INR L
MOV A i H
RAL
MOV M i A
OCR L
MOV A.M
RAL
HOV M , A
OCR L
HOV A , H
RAL
HOV M i A
OCR L
MOV A » M
RAL
JMP TLOOP
AN I 2000
MVI A, 2400
JZ PLSV
MVI A, 2550
CALL OUTR
RET
MOV L ,C
INR L
INR L
INR L
MOV A.H
RET
CALL GETFX
MOV E.A
HOV 8.L
INR B
MOV L.C
MOV A,C
AO I 110
MOV C.A
MOV A , E
ANI 200Q
JZ DIVIT
CALL L MUL
MOV A,C
MOV C.L
HOV L.A
MOV A , H
CALL COPY
HOV L.C
INR L
JMP GET A
CALL LOIV
JMP F I NUP
CALL CTWO
MOV B.A
CALL GETEX
MOV E , A
ANI 23JQ
JZ AODl
OCP E
MOV M.E
HOV A.B
JMP INPOP
INR E
JMP F I NI T
MVI E.3770
(NR E
SUI 120
LOOP
120
•►/SERVES AS TERM FOR OIGO t C.V
;/HULT. BY 10 (START WITH X2)
;/LEFT SHIFT 1 = X2
;/SAVE X2 IK "PESULT"
;/SFT TO TOP OF NUMBER
;/SFT C TO RESULT
; /NOW C SET RIGHT
;/SHOW RAM TO RAM TRANSFER
;/SAWE X2 FINALLY
;/MUST RESET C
:/BACK TO NORMAL
:/GET X8
;/SFT UP TO CALL OAOD
;/SET B TO X2
;/T0 X2
I /AOO TWO LOW WORDS
;/BACK UP TO OVEPFLOW
; /GET IT
;/NOW SET TC X2 OVERFLOW
: / I TS AT B-l
;/ADO WITH CARRY - CARRY WAS P
; / A L L DONE, RETURN OVERFLOW IN
;/SET PTP FOR LEFT SHIFT OF NU
;/BACK UP TO OVERFLOW
;/0VERFLOW = O 1ST T I HE
;/SAVE OVERFLOW
:/r£ST FOP. DONE
;/OONF WHEN F MINUS
;/MOVE TO LOW
;/PUT BACK
;/.«.TP - ALL OONE
; /GET LOW
:/SHlFT LEFT 1
;/RES TORE IT
;/BACK UP TO HIGH
; /GET HIGH
;/SHlFT IT LEFT KITH CAR P Y
;/PUT IT BACK
;/tJACK UP TO OVERFLOW
;/<;ft OVEPFLOW
; / SH I F T IT LEFT
;/G0 FOR MORF
; /GET S I GIS BIT
; /SPACE I NS T F AO OF PLUS
;/TEST FOP ♦
; /NEGATIVE
:/OUTPUT SIGN
;
I/FFTCH INTC; A
;/OCNE
;/MUL OR OIV DEPENDING DN EXP
;/SAVE DECIMAL EXP
:/SET UP TO MULT OR OIV
;/NHW BOP POINTER SFT
;/L PCINTS TO NUMSFR TO CONVFP.
;/POINT C AT "RESULT" AREA
;/lN SCPATCH
;/NOW C SET RIGHT
;/NJW TFST FUR MUL
;/TFST HE GAT I VE DEC. EXP.
;/IF EX!' IS ^ THEN OIVIOE
: / H UL T .
;/SAVE LOC. CF PESULT
;/C = LOC UF NL:M6ER IIT WAS OF S I
;/SET L TO LOC. OF PC SUTL
;/SHt)'ri RA* TO RAM TRANSFER
;/MUVt RESULT TO NUMBER
; /NftW Gt'1 0ECIM4L EXP
;/CONVEPT TO 2 OIGITS
;/SAVF ONES DIGIT
;/GET ObClMAL EXP
;/SAVE A CnPY
;/TFST FOR NEGATIVE
;/BUHP EXP BY 1 SINCE 2 OIGITS
; / OCC R E MF N T NEGATIVF EXP SINCE
; /R E S TORE EXP V» I TH NEW VALUE
;/NOW DO 2ND OIGIT
I /GO OUT 2N0 AND RFST Ffl 01GI'
;/C0MPFNSATE FCR 7 DIGITS
;/CCNVtRT 2 OIGIT BIN TU I
; /ADD UP TENS CIGIT
;/SUBTRACT 10
: / T I I L NEGATIVE RESULT
-,/PfSTORE ONES OIGIT
;/S.\VF ONES DIGIT
"./GET TENS DIGIT
;/r:uTouT it
;/SET A TO 2NU DIGIT
;/COPY Ffl Cm lo?N Tn PAM
;/SET C T.O PLACF TO PUT
; / I T s RESET
;/SiVt RAM
;/SFT
; / r. F T
;/itS r r>:F ff ases l
I/SLT TO OFST 1 NATION RAM
;/SAVF 4TH WGRO IN B
i /SET TH OFST INAT ION
;/SAvr f- 1 p ^i woro
<:o
AOI
MOV . .
MOV A, E
CALL OIGO
HOV A, B
RET
MOV A.C
AOI 5
MOV C.A
MVI A, (TEN 5/? 56)
CALL COPY
MOV A.C
SUI 5
MOV C,A
RET
MOV B.H
MOV H . A
MOV A.f
INR L
MOV 0, M
INR L
MOV F , M
INP L
MOV L , M
MOV Hi f$
MOV B.L
MOV L.C
MOV M » A
INR L
HOV A , M
MHV M, 0
INR L
MOV H , F
INR L
MOV M, B
RET
SCRATCH MAP FDR I/O CONVERSION ROUTINES
IN A I INPUT S
OVFRFLOW
HIGH NUMBER - MANTl SSA
LOW f.UMBFR
CHARACTEP ISTIC
DECIMAL FX»ONEXT (SIGN CMAG.I
TFN«"*N
T E N * * N
TEN«*N
RESULT OF MULT L OIV
A NO TEMP FOP X?
•BFGhJ INPUT* • *
//// 4 1/2 OIGIT INPUT ROUTINE
0E21
0E22
OE23
0E25
0E26
0C27
I NPUT : MOV R.L
MOV A,C
AOI
HOV
MOV
INR
170
;/SAVF AODPFSS WHERE DATA
;/IN SCRATCH
;/COMPUTE LLC. ]\ SCRATCH
FEBRUARY 1977
INTERFACE AGE 107
SOFTWARE SECTION
MICROCOMPUTER DEVELOPMENT SOFTWARE
3E2B
0E29
0E2C
0E2D
0E2E
JE31
0E33
0E36
3E3B
0E3B
0E30
0E40
0E43
3E46
0E4B
0E49
i)E4B
0E4C
0E4n
0E4E
0E4F
0E52
0E54
0E55
0E56
Of. 5 7
0659
0F5C
0E5F
0E61
0E63
0E66
)fc69
0E6B
0E6C
0E6F
0E71
3E74
0E77
0F79
3E7A
OE 70
OEBO
0EB2
0EB3
0EB6
0EB7
OE BR
0EB9
OEBB
OEBE
OEBF
0E90
0E91
0E92
0E93
OE'06
0F97
3E9B
0E9B
0E9E
OEAI
0EA4
0EA7
0EA9
OEAC
OE AD
OE AE
OE AF
OEQO
0EB2
0EB3
0EB4
0EB5
0EB6
0EB7
OEBA
OEBC
OEBD
OEBE
OEBF
DECO
3EC1
0EC3
0EC4
0EC5
0EC6
0EC9
OECC
OECF
OEOI
77
CO CC OE
FE FE
CA 86 OE
FE 1 5
C A 9 B OE
FE FO
C2 IF OF
CD 15 OF
CD CI 00
E6 7F
5F
E6 40
77
2F 17
CD F 4 00
CO CI OD
E6 3F
FE 05
FA 6F OE
CD A6 00
06 05
77
C3 5F 3E
2E IB
CO F 4 00
CD C I 30
E6 3F
B7
CA 19 3F
CD A6 OD
D6 0 1
INR C
CALL 7R0IT
INR L
MDV M i A
CALL GMJM
CP! 376Q
JZ DtCPT
CI 25Q
JZ INEXP
CPI 3600
JN2 E^P
call fltscn
call cftex
AN! 177C
;/BY 2
;/ZFPC NUMRER
I/ANO ZF"G
I/DECIMAL EXPONENT
I/CET INTEGFR PA°T OF NUM
; /TERM=.?
;/yfs
;/TESt FOR F
;/yeS - handlf exp
;/TbST FOR SPACE TERM I240R-26
5/NOT LEGAL TEPM
! / F L n A T * AND SIGN IT
MOV
ANI
RIC
ORA
MOV
MOV
JZ
MVI
SUB
ADD
MDV
MVI
E » A
100Q
H i A
TRYTN:
I NT 1 :
70
7B
C3 36 OE
CO 15 OF
co 19 or
CO 30 OF
CO CC OE
FE FO
C2 IF OE
69
2C
C6 OD
6F
6F
7C
CO 02 OE
C3 43 OE
C!) FA OF
FE AO
CA CC OE
.. L.UFN5
CALL CCPT
CALL GET EX
ANI 770
CPI 50
JM TRYTN
CALL MCPD
SUI 5Q
MOV M i A
JMP INT5
MVI L . ITEN
CALL CCPT
CALL GETEX
ANI 77Q
ORA A
JZ SAVEN
CALL MCRD
SUI 1C
MOV M r A
JMP INT1
MOV L,C
OCR L
OCR L
MVI M.O
CALL EP1
MOV E t A
MOV L.C
OCR L
DC R L
MnV B, M
CALl GETEX
MOV M,B
MOV A , E
JMP TSTEX
CALL FLTSGM
CALL SAVEN
CALL ZROIT
CALL GMJM
CPI 360Q
JNZ ERR
MOV L.C
INR L
INP. L
MOV A t M
ANI 37Q
MOV B,A
INR L
MOV A i M
ORA A
MOV A i B
JH USEIT
MVI A,OQ
SUB B
INR L
ADD M
MOV H, A
MOV A,C
AOI 15Q
MOV L, A
MOV L.M
MOV At H
CALL COPY
JMP SCALE
CALL INP
CPI 2400
JZ GNUH
J/SAVF COPY
I/GFT SIGN OF EXP
; /INTO SIGN BIT
;/SET FLOPS
I/SAVE SIGN
I/GFT EXP BACK
J/JMP IS ♦
I/MAKF MINUS ♦
;/NOW ITS +
I/SIGN NUM3EP
; /SAVE EXP (SIGN t MAG.)
AND 3770) ;/TRY MURO WITH 10**5 FIR
; / TRANSFER TO RAM
5 /GET DECIMAL EXP
5/CET MAG. Of EXP
I/TEST FOR USE OF 10**5
;/WUNT GO - TRY 10
I/WILL Gil SO 00 IT
-./MAG = MAG -5
;/UPOATF DEC. EXP IN MFM
;/GM TRY A^AIn
A\tO 3770) ; /PUT TEN IN RAM
/SIT UP FOR LOOP
/G FT MAGNITUDE
/TEST F!OP 0
/DONE, MOVE NUM OUT ANU GET U
/NOT Dt.Nf - DG 10
/rxp * Exp -i
/UPOATE MEM
/TP Y AGAIN
/ZERO DIGIT COUNT
/SINCE ITS NECESSARY
/TO CUMPUTF EXP.
/ZEROED
/ GNUM IN MIUOLE
/SAVE TERMINATOR
/MOVE DIGIT COUNT TO EXP
/ BACK UP TO DIGIT COUNT
/ GOT DIGIT COUNT
/ S F T L TO DEC. FXP
/PUT EXP
/TFRK BACK TO A
/TEST FOR E+OR-XX
/FLOAT ANO SIGN NUMBEP
/SAVE NUHBFP IN ID Tf MP
/ZERO OUT NUM. FOR INPUTTING
/NOW INPUT EXPONENT
/TEST FOR SPACE TERM.
/NOT LEGAL - TRY AGAIN
/GET EXP OUT CF MEM
/•••TP
/EXP LIM I TED TO 5 BI TS
/ GCT LOWEST 8 Bl TS
/GET GOOD BITS
/SAVE THEM
/GET SIGN OF EXP
/INTO A
/SET FLOPS
/INCASE NOTHING TO DO
/ IF NEC. USE AS +
/IF ♦ MAKE -
/0-X
- X
FXP
/POINT AT EXP
/GET REAL OtC.
/PUT IN MEM
/NOW GET NUMflEP BACK
/GET ADD OF L
/L POINTS TO L OF NUMBER
/NOW L POINTS TC NUMBER
/P AM TO RAM CDPY
/COPY IT BACK
/NOW ADJUST FOR EXP
/GET A CHAR
/IGNORE LEAOING SPACES
LOOKING FOR-?
• IMSAI
• Polymorphic Systems
• Technical Design Labs (TDL)
FOR YOUR IMSAI /ALTAIR
How About...
• A Video Interface which provides 16 x 64
characters, upper and lower case, graphics
and a parallel input port for a keyboard, all
on one board!!
• 16kRAMon ONE CARD. Super low
power — 500 ma for 16k!! Super fast
access — 200 ns! ! Start with only 4k, 8k
or 12k then expand to 16k later.
• LOW, LOW PRICES on all products.
Write or call us for information and complete
price list.
YOUR MAILORDER COMPUTER SHOP:
Call: (315) 637-6208
computer
cmcfpruer
P.O. Box 71 • Fayetteville, N.Y. 13066
0ED4
0ED6
0E09
OEOA
0ED8
OEDC
8e8R
0EE2
0EE4
0EE7
0CE9
OEEA
OEEC
OEEO
OE EE
0EF1
0EF2
0EF5
S§F7
OEFA
OEFB
OEFC
OEFO
OEFE
OFFF
OFOO
QF01
0F03
0F04
0F05
0F06
OFOB
0F09
OFOA
OFOB
OFOC
OFOO
OFOE
OFOF
OF 12
OF 15
OF 16
OF 19
OF 1A
OF 1C
0F10
OFIE
)F IF
0F20
OF 2 1
0F22
0F23
OF 24
OF 27
0F23
DF29
0F2A
0F2B
0F2D
0F2E
0F2F
OF 30
OF 31
>F32
0F33
0F34
0F35
0F36
3T 37
0F3B
OF 39
OODB
0F3A
0F3B
0T3C
0F3D
0F3E
0F3F
0F40
0F41
0f44
3F45
0F46
OF 4 7
OF 48
0F49
0F4A
0F4C
on,o
3F4E
0E4F
0F50
0F51
0F5?
OF53
OF 54
0F55
0F56
0F57
01 5B
0F59
Of 5A
3F5P
0F5C
0F5F
)F6 )
0F61
0F62
0F63
Off,
)F05
0F66
0F67
0F6B
0F6A
OF 6B
Or6E
0L6F
Of 70
0F71
0F72
OF 73
OF 75
Of 77
OF 70
0F79
JF 7A
OF 7R
0F7C
0F7D
0F7F
3T7r
OFBO
OF 83
0 F 84
0F8S
0FB6
0F87
OF 88
JFB9
OF 8A
0F8B
3F8C
OF 60
OF RE
JF8F
OF 9 0
0F11
0F92
0F93
OFCO
OFCO
3FI30
0F03
0F06
0F09
OFDC
OFOF
0FE2
0FE5
JF E8
OFEB
OFEE
OFF I
OFF 4
0FF7
2C
2C
2C
36 80
C3 CC OE
FE AB
CA CC OE
D6 80
FB
FE OA
FO
5F
CO 2A OF
73
CO 51 OD
21°E
CE 00
CI FA OF
W 67 0E
C3 D5 OA
CPI 255Q
JNZ TRYP
HOV LtC
INP L
INR L
INR L
MVI H.200Q
JMP GNUM
CPI 2530
JZ GNUH
SUI 2600
RH
CPI 120
RP
MOV E t A
CALL GETN
HOV M,F
CALL MULTT
ORA A
RNZ
CALL GETN
MOV L.C
INR L
INR L
ADO M
MOV M, A
OCR L
HOV A i H
A CI 00
MOV M, A
DCR L
HCV A f H
AC I OQ
HOV H» A
RC
OCR L
DCR L
HOV B, M
INR B
HOV H. B
CALL INP
JMP TSTN
MOV LtC
JMP FLO
MDV A.C
AOI 150
HOV L, A
HOV E.H
HOV L i E
INR L
HOV M,C
HOV L r C
MOV C.E
HOV A, H
Call ccpy
hov c,a
ORA A
RET
MOV A,C
ADI 160
HOV L» A
HOV A.P
RET
MOV L.C
XRA A
HOV M t A
INR L
MOV Mr A
INR L
HOV M. A
I MR L
MOV H, A
RET
FOU
I/TEST FOR -
I/NOT H1NUS
; /MINUS SO SET SIGN
;/IN CHAR LOC.
I/SET - SIGN
;/ IGNORE *
;/STRlP ASCI I
; /RETURN IF TERM
:/TEST FOR NUHBER
;/ ILLEGAL
I/SAVE DIGIT
;/LOC. OF OIGIT STORAGE TO L
I/SAVE OIGIT
;/MULT NUMBER BY 10
;/TEST FOR TOO MANY DIGITS
;/T00 MANY DIGITS
; /GET DIG I T
;/SET l rn number
; TP
5/AOD IN THE DIGIT
;/PUT RESULT BACK
;/NOW 00 HIGH
; /GET HIGH TO ADO IN CARRY
5/AOO IN CARRY
5/UPDATE HIGH
;/***TP EXTENSION
;/ADO IN CARRY
;/***TP ALL DONE
;/OVERFLOW ERROR
;/8UHP OIGIT COUNT NOW
; / GET OIGIT COUNT
;/BUHP OIGIT COUNT
: /UPDATE DIGIT COUNT
I/GET NEXT CHAR
I/HUST BE NUM. OR TERH
; POINT L AT NUMBER TO FLOAT
;G0 FLOAT IT
I/PUT NUHBER IN ID
: / GET ADO OF L
; /GET L OF RESULT
;/POINT L AT (D
5/SFT TO 2ND WORO TO SAVE C
I/SAVE C IN (LI +1 SINCE IT WI
;/SET UP TO CALL COPY
; /.Si )W LtC SET
;/PAM TO RAM COPY
;/COPY TO L
;/ID+l RETURNED HERE SO SET A
; HAKE SURE CY=0 (NO E*R
; /NOW EVFRYTHING HUNK Y— DORRY
I /GET DIGIT
IN SCRATCH
I/LAST LOC.
;/PUT IN I
5 /GET DIGIT
;/ZERO NUHBER
;/NOw SET SIGN TO
;/UCNr
READ FOU 333Q IODT READ RCUT INE
; CONTAIN LOW BYTE OF TWO BYTE VALUE. RETURNS CY=1 IT
; BOfU, CY= 3 IF BC<DE : Z= 1 IF RC =0E .
DCCMP: HOV A , E
cmp r.
RNZ
HOV A,D
CMP b
RET
; ROUTINE TD INPUT CHAR FROH TTY
Chap 2: push b
CALL R E AC
HOV A, B
POP 8
RFT
: routine to adjust values of bin, fgrwap._
: L INF LENGTH flF SOURCE LINE. PASSED ADD OF TEMP VARIARL
CONTAINING ADD OF SOURCF LINT.
; INPUT FROH COT
;GFT CHAR. TO A REG.
; RE S 1 ORE 8,C
P NT . ANO
PTVA1 :
PUSH
PUSH
PUSH
MVI
MOV
I NP
MOV
I NR
PUSH
XTHL
HOV
I NX
MOV
I NX
XTHL
HOV
I NP
MOV
INP
DCR
XTHL
HI!V
POP
MOV
POP
PO"
POP
RET
TO C
flpAusV
PSW
ANC (1UTPUT.
POP PSw
R FT
: MULIP'L ICAT1DN ROUTINE I AnD. VALUES)
MULT: MOV E.M
OCX H
HCV D , r
HVI M,1H
MOV
MOV
RAP
nr.R
H^V
IF
47
C3 78 OF
C3 BO 0^
C3 5C 09
C3 5F OA
C3 00 09
C3 60 09
C3 CE OA
C3 57 1A
C3 02 OE
C3 9 A OC
8 Vo 3f
C3 4 7 OF
C3 3A OF
T3 67 OF
C3 40 OF
■
MDV
I NX
MOV
ADC
MUV
INX
MOV
RAP
HOV
MOV
RAR
MOV
JMP
B, A
TOP
; L I NK AGES TU FLOATING POINT RCUTIMES
JHt>
J Mo
JMP
JMP
JMP
J MP
JMP
J MP
JMP
JMP
7 7 1 51
WZEP
L AlOD
L"UL
LDIV
LSUB
OFXL
LMCM
COPY
CVPT
I NPUT
MULT
PTVAl
OCOMP
MCHK
CMAR2
NU PROGRAM ERRORS
Branch to page 120
108 INTERFACE AGE
CIRCLE INQUIRY NO. 46
FEBRUARY 1977
DIODES/ZENERS
1N914
100v
10mA
.05
1 N4004
400v
1 A
.08
1N4005
600v
1 A
.08
1 N4007
1000v
1A
.15
1N4148
75v
10mA
.03
1N753A
6.2v
z
.25
1N758A
10v
z
.25
1N759A
12v
z
.25
1N4733
5.1v
z
.25
1N5243
13v
z
.25
1N5244B
14v
z
.25
1N5245B
15v
z
.25
SOCKETS/BRIDGES
8-pin
pcb
.25
WW
.45
14-pin
pcb
.25
WW
.40
16-pin
pcb
.25
WW
.40
18-pin
pcb
.25
WW
.75
22-pin
pcb
.45
WW
.75
24-pin
pcb
.35
WW
1.25
28-pin
pcb
.35
WW
1.45
40-pin
pcb
.50
WW
1.95
Molex pins .01 To-3 Sockets .25
2 Amp Bridge 100-prv 1.20
25 Amp Bridge 200-prv 2.50
TRANSISTORS, LEDS, etc.
2N2222
NPN
.10
2N2907
PNP
.15
2N3740
PNP 1A
60v
.25
2N3906
PNP
JO
2N3055
NPN 15A
60v
.50
LED Green, Red, Clear
.15
D.L. 747
7 seg 5/8" high
1.95
XAN72
7 seg corn-anode
1.50
FND 359
Red 7 seg corn-cathode
1.00
C MOS
- T T L -
4000
4001
4002
4004
4006
4007
4008
4009
4010
4011
4012
4013
4014
4015
4016
4017
4018
4019
4020
4021
4022
4023
4024
4025
4026
4027
4028
4030
4033
4034
4035
4040
4042
4043
4044
4046
4049
4050
4066
4069
4071
4082
.20
.20
.25
4.95
1.20
.40
1.20
.25
.45
.20
.25
.40
1.10
.95
.35
1.10
1.10
.70
.85
1.35
1.15
.25
.95
.35
1.95
.50
.95
.45
1.95
2.45
1.25
1.35
.95
1.25
.95
1.50
.80
.70
1.35
.40
.35
.45
7400
7401
7402
7403
7404
7405
7406
7407
7408
7409
7410
7411
7412
7413
7414
7416
7417
7420
7426
7427
7430
7432
7437
7438
7440
7441
7442
7443
7444
7445
7446
7447
7448
7450
7451
7453
7454
7460
7470
7472
7473
.15
.15
.20
.25
.15
.25
.45
.55
.25
.15
.15
.25
.30
.65
1.10
.25
.50
.15
.40
.45
.15
.45
.45
.35
.25
1.15
.65
.95
.95
.95
.95
.95
1.20
.25
.25
.25
.25
.40
.45
.45
.35
7474
7475
7476
7480
7483
7485
7486
7489
7490
7491
7492
7493
7494
7495
7496
74100
74107
74121
74122
74123
74125
74132
74141
74150
74151
74153
74154
74156
74157
74161
74163
74164
74165
74166
74175
74176
74180
74181
74182
74190
74192
.40
.45
.20
.65
1.00
1.05
.40
2.50
.40
1.15
.95
.45
1.25
.85
.95
1.85
.45
.40
.55
.55
.45
1.35
1.30
1.00
.95
.95
.75
1.15
.75
1.25
1.25
.95
1.50
1.35
.95
1.25
.85
3.25
.95
1.75
1.65
74193
74194
74195
74196
74197
74198
74367
751 08A
75110
75491
75492
74H00
74H01
74H04
74H05
74H15
74H20
74H22
74H30
74H40
74H52
74H53J
74H55
74H72
74H101
74H103
74H106
74L00
74L02
74L03
74L10
74L30
74L47
74L75
.85
1.45
.95
1.50
1.25
2.35
.85
.35
.35
.50
.50
.25
.25
.25
.25
.30
.30
.40
.25
.25
.15
.25
.25
.55
.75
.75
.95
.35
.35
.30
.35
.45
1.95
.55
74S00
74S02
74S03
74S10
74S11
74S20
74S40
74S51
74S64
74S74
74S112
74S133
74S140
74S151A
74S153
74S158
74S194
74S257 (8123)
74LS00
74LS01
74LS02
74LS04
74LS08
74LS09
74LS10
74LS11
74LS20
74LS21
74LS22
74LS32
74LS37
74LS40
74LS42
74LS52
74LS74
74LS90
74LS93
74LS107
74LS153
74LS157
74LS164
74LS368
.55
.55
.50
.45
.45
.50
.30
.45
.30
.50
1.50
.45
.75
.45
.45
.45
1.50
.25
.45
.45
.45
.55
.45
.45
.45
.45
.50
.25
.25
.55
.40
.55
1.75
1.45
.95
1.30
1.00
.95
1.20
.85
1.90
.70
9000 SERIES
9301
1.00
9309
.45
9602
1.50
MEMORY,
CLOCKS
74S188 (8223)
3.00
8080
26.50
MM1702A
10.50
MM5314
3.50
MM5316
3.95
2102-1
1.75
2102-L1
1.95
TR 1602A
6.95
LINEARS, REGULATORS, etc.
MCT2
.95
LM320K5
1.65
LM340T-24
1.25
8038
3.95
LM320K12
1.65
LM340K-12
2.15
LM201AH
.75
LM320T12
1.65
LM340K-15
1.65
LM301AH
.25
LM320T15
1.65
LM340K-18
1.65
LM308AH
1.00
LM339
1.65
LM340K-24
1.25
LM309H
.65
7805(340T-5)
1.00
LM373
1.95
LM309K
.90
LM340T-12
1.25
LM380
.95
LM310
1.15
LM340T-15
1.25
LM709
.30
LM311
1.35
LM340T-18
1.65
LM711
.45
INTEGRATED CIRCUITS UNLIMITED
7889 Clairemont Mesa Blvd. • San Diego, CA 92111 • (714) 278-4394
All orders shipped prepaid No minimum
Open accounts invited COD orders accepted
Discounts available at OEM Quantities
California Residents add 6% Sales Tax
24 Hour Phone (714) 278-4394 Master Charge / BankAmericard
LM723
LM725
LM739
LM741
LM747
LM1307
LM1458
LM3900
LM75451
NE555
NE556
NE565
NE566
NE567
SN72720
SN72820
8-14
.45
1.95
1.50
.25
1.10
1.25
.95
.65
.65
.50
1.10
.95
1.75
1.35
.35
.35
FEBRUARY 1977
CIRCLE INQUIRY NO. 59
INTERFACE AGE 109
SOFTWARE SECTION
MICROCOMPUTER DEVELOPMENT SOFTWARE
AMI'S EVK SERIES
MICROCOMPUTER PROTOTYPING BOARDS
By Robert A. Stevens
INTRODUCTION
jym*S6BPP PROTOTYPING ^
This article is Part Three of a series on the EVK
Microcomputer hardware, firmware and supporting
oftware. This month's subject covers the ROM resi-
ent Prototyping TTY MONITOR Operating System,
PROTO.
PROTD SOFTWARE
The resident PROTO software program includes the
ifollowing commands:
L LOAD HEX paper tape program into RAM memory
P PUNCH HEX paper tape from memory
S SET (write) specified data string characters into
consecutive memory locations
D DISPLAY (prints) in HEX to TTY contents of
specified memory locations
G GO TO user program at specified address and ex-
ecute
R PRINTS contents of MPU register (C, B, A, X, P &
S) on TTY at time the user's program was last
interrupted
B BURN (copies) the contents of specified memory
into the EPROM in the programming socket
V VERIFY (compares) contents of specified memory
with EPROM or ROM in the programming socket
I INPUT (copies) contents of the EPROM or ROM in
the programming socket into specified RAM
memory locations
M MOVE (copies) contents of memory block from
specified location to designated RAM memory
location
E END of transmission (EOT) character terminates
the end of punch paper tape record and punches
EOT on paper tape.
The commands will operate on a single character
P CODE plus address parameters from the TTY
keyboard,
PROTO COMMAND DESCRIPTIONS
The EVK 300 board will be supplied with a proto-
typing operating system program (PROTO). The
program resides in ROM with a starting address of
F000. The various routines within PROTO are called by
entering via the TTY keyboard one of the commands
described in the following paragraphs. A command
consists of one character command identifier followed
by additional parameters, if needed, separated by
blanks or commas. All commands end with a carriage
110 INTERFACE AGE
FEBRUARY 1977
SOFTWARE SECTION
MICROCOMPUTER DEVELOPMENT SOFTWARE
Good Software and Support are to a
computer as the driver is to his car.
One without the other and you have
a magnificent paperweight.
return. Since no action is taken before the carriage
return, an input line may be deleted by the use of the
TTY ESCAPE key.
L, ADDL, ADDH, OFFSET
The Load tape command loads data from a hex
formatted tape (see paragraph on 6800 HEX tape for-
mat at end of article) into the user's memory between
ADDL and ADDH, inclusive. The OFFSET is added to
the memory address specified on the tape to form the
actual memory starting address for the data stored. If a
byte to be stored into memory has an address outside
of the range ADDL, ADDH, it is not entered into
memory, but a Delete character (H'FF) is transmitted
to the terminal.
Example: L 0100 02FF FFFA
The address range in the L command is optional,
and if omitted is assumed to be the full range of
memory (0000-FFFF). The offset parameter is also op-
tional, and if omitted is assumed to be zero (0000).
Thus the L command with no parameters loads the
tape into the memory locations specified on the tape
with no offset. The offset value in the L command is a
two's complement signed number, entered in unsigned
hexadecimal. For example, an offset of —6 is entered
as FFFA.
If an attempt is made to load non-existent memory,
or ROM, the loading operation will terminate, typing
out the address and the message "BAD ADR."
In operating the Load command, PROTO turns on
the tape reader and scans the tape for the first ASCII
"S," which indicates start of record. It is not necessary
to position the tape at the first record of a tape file
since each record contains its own starting address.
PROTO will load data records until it encounters an
end of file (EOF) record or a tape error (Check Sum or
illegal character). When PROTO reads a header record
(start of record and address), it translates the header
into ASCII characters and prints the result. The Check
Sum is the binary sum of all characters in the block.
PROTO does not list the tape contents as the tape is
being read.
When PROTO encounters an end of file record or a
tape error, it turns off the reader and prints "EOF" or
"CKSM ERR" respectively.
P, ADDL ADDH, OFFSET
The Punch hex format command causes PROTO to
punch on the TTY paper tape the contents of memory
between ADDL and ADDH, inclusive. Each record is
punched with a four-digit hex address of the starting
byte of the record. This address is derived from the
memory address of the byte being punched, plus the
offset value, OFFSET. The offset is optional, and if
omitted is assumed to be zero.
All data records are punched in hex format. Records
using this command (except the last record) contain 1 6
bytes of data plus the start code, byte count, address,
and the checksum.
The P command does not cause an EOF record to be
punched so that several disjoint blocks of memory can
be combined on one tape file.
Example: P F000 F07F 0F00
S, ADDR, BYTE1, BYTE2, , BYTEN
The Set memory command writes the 8-bit data
words specified by BYTE1 to BYTEN into consecutive
memory locations starting at ADD.
If ADD has more than 4 (hexadecimal) characters or
if any of the data bytes have more than 2 characters
each, only the last 4 or 2 characters are used respec-
tively.
Example:S 0000 86 05 97 28
Memory locations at 0000 through 0003 are loaded
as shown.
D, ADDL ADDH
The Display memory command prints the contents
of memory between ADDL and ADDH, inclusive, in
hex format. Up to sixteen bytes per line are printed,
preceded by the hexadecimal address of the first byte
of the line. A carriage return is forced after a byte hav-
ing a low order digit of F in its memory address is
printed.
Example: D FCOO FCIF
Two lines of memory contents are printed as
follows:
FCOO 00 01 02 03 04 . . . OEOF
FC10 10 11 12 13 14... 1 El F
G, ADDR
The Go command starts execution of the user
program at the address specified by the input
parameter. To insure that all registers contain the same
information they held before the user program was in-
terrupted, PROTO pushes into the stack the copy of
the user registers that it keeps at locations FFEB —
FFF3 (CC, B, A, X, P. S) then executes an RTI instruc-
tion. The user can change the initial values of the
FEBRUARY 1977
INTERFACE AGE 111
SOFTWARE SECTION
MICROCOMPUTER DEVELOPMENT SOFTWARE
registers by changing the contents of these locations.
Example: G 300
Program will branch to address 0300 and start ex-
ecution from that point.
R
The Registers command prints the contents of
memory locations FFEF — FFF3 which contain the
values that were in the user's C, B, A, X, P, and S
registers (in that order) when the user's program was
last interrupted.
B, ADDL, ADDH, ROMAD
The Burn command copies the contents of user
memory into the EPROM in the programming socket,
beginning with memory location ADDL through
ADDH, inclusive, to EPROM locations beginning with
address ROMAD. Each byte is burned in with 20 3-ms
pulses of -50V on the Vprog pin (pin 1 1 ) of the EPROM.
Before attempting to write into the EPROM, the con-
tents of the EPROM are compared with the user
memory data byte to verify that the EPROM will take
the byte (PROTO will not attempt to program a EPROM
location to logic LOW which already contains logic
HIGH). After the 20 pulses, the new contents of the
EPROM are verified against the memory byte to be
sure the data was indeed written. If the byte did not
program, a NAK code is typed out on the terminal, and
another try is made, up to a maximum of three tries.
If the preverify encounters a EPROM location con-
taining HIGHs where the memory byte has zeros,
PROTO will type out the memory address, the memory
byte in binary, the EPROM byte in binary, and the
EPROM address (if different from the memory
address), then stop. If after attempting to write data
into the EPROM, the data does not program, or
erroneous bits show up, a similar display occurs for the
failing location, with the additional message "BAD
ADR" typed on the same line.
The EPROM address ROMAD is optional, and if
omitted, ADDL is jsed, with only the least significant
nine bits of the address being used. If the address
range ADDL, ADDH is omitted, the 512 bytes begin-
ning at FCOO are used, and the EPROM is checked to
insure it contains all LOWs before any locations are
written. If not, four question marks are typed and the B
command is aborted.
V, ADDL ADDH, ROMAD
The Verify command compares user memory be-
tween ADDL and ADDH, inclusive, with the corres-
ponding locations in the EPROM in the prgramming
socket, beginning with EPROM address ROMAD. Each
location that does not match is typed out in the follow-
ing format:
aaaa mmmmmmmm pppppppp rrrr
where "aaaa" represents the user memory address,
"mmmmmmmm" represents the memory byte, in
binary, and "rrrr" represents the EPROM address, if
different from the memory address (in the low nine
bits). Nothing is typed for matching locations. The
typeout may be aborted by typing an ESC key during
the typeout.
If the ROMAD parameter is omitted, ADDL is
assumed. If no parameters are supplied in the com-
mand, the whole EPROM is compared to the contents
of FCOO — FDFF.
I, ADDL ADDH, ROMAD
The Input command copies the contents of an
EPROM in the programming socket into memory
beginning at the address ADDL through ADDH, in-
clusive, from the EPROM address ROMAD. If ROMAD
is omitted, ADDL is assumed. If no parameters are
supplied, the entire EPROM is copied into the RAM
area, FCOO — FDFF. An attempt to copy an EPROM
into non-existent memory will abort the command with
the message "BAD ADR."
M, ADDL, ADDH, DEST
The Move command copies memory from the range
ADDL — ADDH, inclusive, to the RAM locations start-
ing at DEST. This copy begins at the lower address, so
if DEST lies within the range ADDL — ADDH, some of
the original data will be lost, and other parts will be
duplicated.
E
The End of Transmission command is used to cause
an EOT character to be punched on the paper tape.
After a field has been punched, an EOT will terminate
the record and punch a trailer tape. When reading a
record, the reader will stop at the EOT character. If no
EOT character is present, the reader must be manually
turned off and the Reset switch must be pressed to
enter the operating system program.
THE SUBROUTINE ROM
Many of the monitor's functions are accomplished
with the help of the Re-Entrant Self-Relative Sub-
routine ROMs (RS)3. This standard ROM, which can
be considered a software extension to the 6800 in-
struction set, is also available to be used by the user
both on the prototype board and in his final produc-
tion system. The user can call one of the 25 (RS)3 sub-
routines with an SWI instruction followed by the
number of the desired subroutine.
The user should be aware of the fact that the (RS)3
pushes from 7 to 10 bytes of data onto the stack,
depending upon which subroutines are called. This
means that if the user calls (RS)3 routines, he must
make sure that the necessary memory space is avail-
able for stack expansion.
Since PROTO assigns its own stack area, the user
need hot be concerned about how (RS)3 is used.
INTERRUPTS
Of the four available interrupt vectors, IRQ, RESET
and SWI are used by PROTO while NMI is left for the
user. The vectors are in RAM (except for RESET which
is switch controlled) so the user writing his own
program can completely control the system.
The upper memory locations are RAM. If the user
112 INTERFACE AGE
FEBRUARY 1977
SOFTWARE SECTION
MICROCOMPUTER DEVELOPMENT SOFTWARE
expects either NMI or IRQ interrupts to occur, he must
initialize the vector addresses to the starting address of
the IRQ and NMI handler routines.
PROTO must have control of the RESET vector so
that the RESET switch on the Prototyping Board can
return program control to PROTO at any time.
The reset routine copies the contents of the B, A, X,
CC, and S registers into a fixed area of memory. This
means that the program can be aborted at any time by
using the reset switch while still saving all the registers
except the program counter. Unfortunately, the con-
tents of the program counter are lost.
It is possible for the user to use the NMI interrupt to
abort a program execution without losing the contents
of the P and C registers. This condition is auto-
matically set in the NMI handling routine when PROTO
is called. This interrupt vector will cause the contents
of the user's registers to be printed when the NMI line
goes low.
Since the SWI instruction is used to call sub-
routines between 00 and H'18 from (RS)3 the user is
somewhat limited in the ways he can use SWI instruc-
tions. However, he can access an SWI handler routine
in his own program by an SWI instruction followed by
a byte containing the decimal number less than H'80
but greater than H'19 < n < H'80 sequence, PROTO
passes control at address FFF4. If the user expects to
access his own SWI routine and use PROTO, he must
use the Set Memory command to store the address of
this routine at locations FFF4 and FFF5.
PROTO makes sure that the user's SWI routine is
entered from the stack with all registers containing the
same information that they would hold if the routine
were entered directly through the SWI vector.
BREAKPOINTS
Breakpoints allow the user to halt his program and
examine the contents of the internal registers.
PROTO provides two types of breakpoints. In this
system, breakpoints are actually debugging routines
that can be called from the user's program just like
(RS)3 routines.
Each breakpoint requires a two byte calling se-
quence: and SWI instruction followed by a number.
Breakpoints may be inserted either by reassembling
the program with the extra SWI instructions added or
the Set Memory command may be used to replace
parts of the code with SWI instructions. Note that the
second method is not satisfactory for the snapshot
option (described below) since the replaced code must
be restored before execution can be continued. When
using the second method, the user must make sure
that he replaces the first two bytes of an instruction. If
the SWI replaces the second or third byte of an instruc-
tion, it may be interpreted as an address rather than an
opcode.
The different types of breakpoints are:
1. Print registers (SWI, H'80)
2. Snapshot (SWI, H'81)
The sequence SWI, H'80 saves the user's registers
at the vector stored in FFF4 — FFF5, prints their con-
tents (in the order CC BB AA XXXX PPPP SSSS),
then returns control to PROTO.
The sequence SWI, H'81 prints out the contents of
FEBRUARY 1977
the user's registers then continues executing the user's
program starting at the address following the byte
containing the number H'81. Note that if this address
does not contain a valid opcode, unpredictable results
will occur.
6800 PAPER TAPE HEX FORMAT
The AMI 6800 Hex Tape format provides a com-
pact representation of binary data patterns for trans-
mission using ASCII communication terminals.
The Hex tape is organized into data records with
each record containing information in the same format.
The record information consists of type, length,
address, data and checksum. All records begin with an
'S' character for start of record identification. All infor-
mation on the tape which is not between a start of
record and the checksum is ignored.
TAPE FORMAT
ASCII
Character Description
1 Start of record (S)
2 Type of record
0 — Header record
1 — Data record
9 — End of file record
3—4 Byte Count
Since each data byte is repre-
sented as two hex characters,
the byte count must be multi-
plied by two to get the number
? CONFUSED ?
SAVE $100-8200
UP TO 30% DISCOUNT
If you are like most people, you are being overwhelmed by
the many computer kits, I/O boards, peripherals, cables,
interfaces, etc. that are flooding the market.
Who has the lowest price? Which is best? What works with
what? How do you decipher all the ads and specs? What do
you actually get? HELP!!!
We can take the hassle out of getting a system together. Let
us know what you need and we will package a complete
workable system for you — no loose ends — either kit or
assembled, for the lowest price around!!! We have more than
10 years experience in the mini-micro-maxi computer field, we
know our way around!
IMSAI, TDL, Processor Tech, Solid State Music, Oliver Audio
Eng., Polymorphics, Lear Siegler, Cromemco, Used /Surplus
Equipment, etc.
• Business Systems
• Consulting/Analysis
• Software/Programming
• Micro-Mini-Maxi Computers
BITS, BYTES & PIECES
621 1 Quincewood Circle
Citrus Heights. CA 95610
(918) 726-6469
CIRCLE INQUIRY NO. 40
INTERFACE AGE 113
SOFTWARE SECTION
MICROCOMPUTER DEVELOPMENT SOFTWARE
5, 6. 7, 8
9 N
N + 1, N + 2
of characters to the end of the
record. (This includes checksum
and address data.)
Address Value
The memory location where this
record is to be stored.
Data
Each data byte is represented by
two hex characters.
Checksum
The one's complement of the
additive summation (without
carry) of the data bytes, the
address, and the byte count.
Example Data Record
Memory Contents
Address Data
A000
A001
A002
A003
10
1A
20
2A
Data Record Contents
Character
Tape
1
Start of record
53
s
9
\ ype or record
o i
1
3
R v/tp poi int
30
o
A
37
7
D
A
M
a
o
n
7
A ri ri race
nUUI ebb
7n
n
Q
o
n
U
Q
uaia uyie i
71
o I
i
i
in
I u
7n
n
1 1
i i
riot a hwto 0
udid Dyie £.
O 1
1
1
1 0
+ I
A
M
13
Data byte 3
32
2
14
30
0
15
Data byte 4
32
2
16
41
A
17
Checksum
38
8
18
34
4
E
in
The format for all hex tape records is diagrammed below.
Character
Header
Record
Data End-of-File
Record Record
1 Start of Record
53
S
53
S
53
S
2 Type of Record
30
0
31
1
39
9
3
Byte Count
4
31
32
12
31
36
16
30
33
03
5
6 Address
7 (if any)
8
30
30
30
30
0000
31
31
30
30
1100
30
30
30
30
0000
9 Data
10
34
38
39
38
98
46
43
FC
(Checksum)
34
34
30
32
02
35
3?
41
48
A8 (Checksum)
N Checksum
39
45
9E
114 INTERFACE AGE
FEBRUARY 1977
SOFTWARE SECTION
MICROCOMPUTER DEVELOPMENT SOFTWARE
SEE MICROCOMPUTER SOFTWARE DEPOSITORY
PROGRAM INDEX FOR COPIES OF THIS PROGRAM.
(Mull) ii/<i>f}t> *MUTU
PROTO PROGRAM
STMT LOC OBJtCT W SOURCE STATEMENT
suuRCt statement
00U0 Bb FBCF A
OObl) Bb it
0052 bO o2l>u I
FFDB
FFDA
FFDC
FFOt
FFEO
fft^
FFtl
FFtU
FFE5
FFE7
F F E 9
FFEA
FFEB
FFEC
FFED
FFEfc
FFFO
FFF2
FFF'I
FFFb
FFFO
FFFA
FFFC
FtfLL A
FBCF A
FBCE A
0020 A
0000 A
ooia a
UOOu A
FFFF A
00OA A
O07F A
O00B i
000b i
0012 i
000F i
0010 i
0015 i
0011 i
F F DO i
0002
0002
0002
oou2
DU02
0001
0001
0001
0002
0002
0UU1
000 1
0001
0001
0001
U0O2
0002
ou02
UOU2
ooo,;
00u2
0002
0U02
' PROTOTYPE BUAHD MONITOR I'HQGRAM
' WtRSlOW 2.1 01/0d/7b
UtFlM T IONS
ACIAC
ACIAC*
ACIAS
BLANK
EUU
EOU
EUu
EUU
tou
EUU
EOU
EQU
EOU
tOU
SFbCE
SF3CF
SFSCE
ACIA CONTROL REG
ACIA 0 A T A REG
ACIA STATUS REG
BLANK CHAR
CARRIAGE HE T Char
ABORT CHAR
END OF MSG TO BE PRINTED
HIGHEST ROM ADDRESS
LINE FEED
MOMENT ,GE TRNG, NX T ADR. k'XI SIS, RNGERH^'BADR
PCRLF,OUTCH,PSPACE/SETMEM,ABOHT
PRJMAD, AOR, ADDL , ADUH, COUNT, MONI TR
RSRSH, BURN, MOVE, RtAO,VFY,PINIT
•HSHSR IcUUTlNt UEFINITlONST
SUBXAb
ADDABX
PmSG
P2Ht X
PHhti
CONHB
PUTA
GET A
ALPNUM
PRTXO
EOU
EUU
EOU
EQu
EOU
EQU
EOu
EQU
EOU
tou
SUBTRACT X FROM i
ADD I
-a JO
PRINT MSG
PRINT BYTE AS 2 HtX CHARS
PRINT fliORD as u hex Chars
CONVERT HEX TO BINARY
OUTPUT TO ACIA
INPUT FROM TTY
TEST F OH ALPHANUMERIC
CQNV. x TO DEC. I PRINT
•'SUBR IS A M A I k 0 TO CALL RSRSR ROUTINES
SUbH MACRO PARAM
MUN I T OR RAM
ORG
iASE EUU
lUS tQU
ADR
AUDI.
ADDH
BUFFTF1
RECTY^
l.UUM
CKSM
SAVES^'
SAVE*
ECHO
TLUUNT
« USER
CREG
BRtG
AREG
xR£G
PREG
SUtG
USnl RMB
ACIAI RMB
IROVtC ««B
SwlVEC «M"
nmIvi.C «M«
rmb
RMB
wmb
Rmb
Rwb
RElilSltRS
RMB
RMB
RMB
RMB
RMB
HMB
1
•••Change if ram usage CHANGES
BASE ADR UStO «TTH IhDEx OPS
BOTTOM UF MONITOR STACK
LINE OF TTY INPUT
ADDRESS IN PROM
OFFSET FOR LOADER/PUNCH
pARAM, ENTtRtD BY USER
POINTER TO LAST CHAR SCANNED
TAPE (■'ECJRD TYPE
COUNT FIELD FHOM TAPt.
CALCULATED C«S*
TEMP STORAGE FOR S REG
TEMP STORAGE FOR * REG
l=ECHO TTY, 0='lO ECHO
TEMP LOC FUw COU*I
USER SaI VfcC TJR (may .<0T BE IMPLEMENTED)
INDIHECT POINTER TO ACIA FOB RSRSR
INTERRUPT HEJUEST VECTOR
SOFTWARE INTERRUPT VECTOR
MUN-MASKAoLt. INTERRUPT VECTOR
MUNITUR ENTRY VECTOR
OUOU I STA)<T
0000 20 05
0002 I r-Hf*
0002 7E U007 I
0005 *• BCt. A AC 1 A A
0OU7 1 SlAkTI
ISfcC
ECiU
bRA
EQU
JMP
.tUHi)
0009
oooc
000D
W10
001 J
001b
0019
00IC
001F
0022
0025
0026
002B
002E
0011
uqi<j
B7 FFEb A
J2
B7 FFtO A
F7 FFEC A
FF FFtt A
BF FFF2 A
BE FFBF A
CE U002 I
FF FFFC A
FF (-FF8 A
CE U'OOI 1
FF FFFu A
CE ItUBt I
FF FFFA A
CE 000b 1
FF FFFb A
i 01
B7 FBCt i
OOul I MUNt.N1
0(;ul 1
60 U005 R
BD UiUH 1
CREG
AWEG
brei;
XREG
S> EG
•bOS
•BREAK
NMlvEC
1R JVEC
«Srtl30
USrtl
■SrtlHA^
SwIVEC
»AC1AA
ACIAI
»i
ACIAS
»1 SET ACIA
4C1AC
4 RETURN ] U mQnI TUR
RESET INTERRUPT MANPLtH
BREAK ON INTERRUPT ROUTINE
SAVE CURRENT VALUE OF REGS
SAVE x
SAVE SP
I Ml T. SREG TO HON. STPCK
HREAkPOI^T ROUTINE
STORE IN INIEHRUPT VECTORS
SET vt> ACIA PTK
RESET ACIA
CR
Euu
E&U
JSR
JSW
OObb
oosa
OObB
UOSC
LtfX
BC FF07
2b 02
20 "7
ibUF
BUFPTR
SEC
HDL ECH3
U1N UNTIL LOUP
11 LPX «BJF + 7l
ONE RT20
"RA abo<jt
0 JiK rsAlTTr
0 STA A o,i
I N x
HlLt COfiDITlUN :
INITIALIZE HUFt-'TR
READ NExl ChAR
INSERT CHAR INTO BUF
INC BUF P I R
DtLOtt 1 ChAh COMMAND
CUmHAKE ChAh rtlTH TABLE OF VALID CHARS FOLLOfttD BY
AllURtSSES OF APPROPRIATE ROUTINES.
0070
00/1
0(J7u
0077
00«2
OOBJ
008U
1)085
00H8
COB* 20 21
LUX
■ BEGIN LOOP
OLUOP CMP i
BNE
» YQ\jh\) Char.
LDX
JmP
• NO LUMPAkE.
DL10 1MX
l.'vX
INX
CPX
BNfc
• ENO LOUP.
Ml
START OF TABLE
CUMPAKE
MOvE TO next Char.
GOTO PROPER ROUT INE
0UU7 1 Ifj'lLF.M
AB3RT
IN TABLE.
TAoLt.: TAbLE OF VALID 1 CHARACTEH COMMANDS.
EACH EN1RY CONSISTS JF 1 BYTES. bYTE 1
CURTAINS THE ASCII ChAR. BYTES 2,1 CONTAIN Th£
ADDHESS uF THE APPROPRIATE ROUTINE.
OOoC 1 LTAbLt
008C
008D
OOBf
0090
0092
0091
0095
0096
009C
009E
009F
00 Al
00A2
00 All
00A5
00A7
OOAB
OOAA
OOAb
EOU
BYTE
rtOHU
BYTE
rtORD
BYTE
rtORD
BYTE
BYTE
rtUHD
BYTE
rti;RD
BYTE
ifURO
BrTE
rtOKU
BYTE
rtORO
BYTE
lOkD
BYTE
OOAD 1 ABORT
OOAU I UAUINP
OOAti CE 0271 I
F"H |M tdc Im. VtTiJI't tU MU"4l TU*»
00B0 1 MSGMON
odbu j msi;abt
00B0 ttE FF 8F i
OObi
0065 20 Qa
mo
t.tu
LDS
SUBR
BRA
• BOS
PMSG
MONENI
Sl^BOTTUM OF STACK
275
2/6
277
OubC 20 :-
OOBE 10
O09F Et 05
HOC! A6 00
OOCi 2d OC
DUCj B« 10
0OL7 2A 01
0UC9 7E 0000
0001
0CIU2
0OD«
OODb
0OD6
,1 HA(»OLtR:
UETt««lNE hHElHEH S,vl IS WJUlUHl CALL. HSRSR CALL,
Uh USER J>>,1 MOT IMPLEMENTED).
bwtAKPOlNT EJTRY
CLEAR ►'RQm burner
PkEIEND TO Bt S/iJ 12b
SAVt REGS
l.>(Utx BfTf < B t T E
TS*
■TER
,<, i tha r l.ut us mere)
xisRET. ADR.
LDA A o,x A: = In(jEx BYTE
bMI SwIiO dREAKPOlNl?
UStR HAS AUtllTljMAL (RS)*'i ADDH JF FIK3T + 2 MUST HE IN FFFj
Suo ** »2<* RSRSR CALL?
B»'L SrtUO ^U
RSRSR
JMP
• uSEH }*l
imp
« MUMTUR CALL.
2b 02
oC 05
CE FF to
00OB
OODC
00OE
OOOF
00L2
ShIuu lDx
• BEG^ LOOP
S«150 FUL I
STA |
INX
CPX
BmE
■ EnD ldop
SrtUO
5.x
• CREG
GO 00 IT
RfctIS FRO" STACK
INCREMENT RET. ADDH.
DEST. FOR 1ST REG
GET REG
COPY
MOVE TO *EXT rEg
END OF LOOP?
0uu7 I MUNlTR Et/U ■
aE FFbF A LDS "B->S
bD Oi'ie I JSR RD=?OFF
FEBRUARY 1977
INTERFACE AGE 115
SOFTWARE SECTION
SOFTWARE EDITORIAL
29u
295
296
STILL CONTAINS S*I I.MOEX.
OOEb
ooee
OOEA
OOEC
DOLE I
OOEE 60 03
00F0 7E 00H7 I
00F3 I
00F3 CE FFE6 A
OOFb C6 03
00F8
OOFA BO 0180 1
OOFO 5A
OOFE 2E F6
0100 Cb 03
0102 BO 037C I
0105 5A
OlUb 2E FA
^□T 129: BREAK
129: snapshot
and return to user phogram
PREGSl PRINT USER REGISTERS
EOU
BSK PR1
JMP MONENO
EOU *
I. OX *CrEG
3 1-ByTE REGS
I OA B *1
SUBK p?nEX
JSR PSPACE
OEC B
BGT PR10
P4hExS
PR20
SET UP COUNT
SET UP COUNT
0115
olio
0119
012B
012D
OHO
o i a
HO OioO
Ct i)27o
It uubQ
013,E FE FhUL i
0111
oiui no ui6o
0U6 FF FFuC i
0P49 uc FFuE '
01«C 27 OC
OluE 86 Ft-00 I
0151 64 Of
0151 26 t9
015A 7E 0041 1
ulo2 Co in
U16N 4F
OlbS SO 02Ui>
0 1 68 5A
0!b<> 26 F 9
Ul6H 20 EU
01 fO
0 1 7 3
0 176
« HtSTCiHt u-aLK' ;
«LSUi». lOS
CiET USER REG
PUSH INTi) USER STACK
MOvE TO NExT REG
LAST REG ?
Ml. COnT HUE LUOP
RETURN TO USE M PKOG
u 120 BO 0<:<>E 1
Ul2i 11
0124 bl
0 125 11
OEx
SUdw
JSw
p2h£x
PSPACE
«MCSER
«SGAdT
SAVE CALC. CKSM
A:s NExT BYTE FHUM 1/
6:=CALC. CKSM
B = T APE CKSM?
NO.
X!=AOH UFCALC. CKSM
PRINT CALC. CaSM
..AUUH CCHMANP
'bEblN OUTER LUoP
UM10 LOX ttADDL
J5« PUHEXS
* BtfclN i.*Nt* LUIP
0*>20 LOx ADOL
SUbR P2HEX
JSH PSPACE
Six ADOL
Cl'x AUJM
BED D«50
AOOL+1
AwU I
«$F
DM20
* tNU Uf- INNER LDOP
JS* PCSLF
tJRA OMlO
« END UF OUTER LUUP
UMbO JM(> MO^E'Ml
PHINT AODL. SPACE
PHI NT MEM I X ) .SPACE > INC
IF A00L=ADDm+1, END OF RANGE
EXIT OUTER LOOP
IF LSB'S UF ADOL=0, END OF LINE
^or End of line, continue
CR,LF. BACK TU I
PUNCH EnU UF FILE AND 00 ,VULLS
-Dx BMPEOF HUNCH tOF RECORD
' 4*U*Lh IW OF fill 4 ID *i> 'lULLl
CE 02iA I £UF
LOx i
SUbK I
BU 'iu'.i J
PUNCH EuF RECURO
• 59 LI140 COUNTER
BEGIN LOOP
LOAD HULL
OUTCh PRINT ONE NULL
DtCHEMENT COUNTER
NULLl DONE?
END OF LOOP
OmSO CR^LF.BACK 10 M0N1TUM
GETRANGE tAL>DL,ADUrl,6uFPTR)
GtT AUDREYS RANGE FrUm BUF
AhUhT IF IimVAlIl)
SET AL)OH: = ADD-ni TU SIMPLIFY COMPARISONS
RETURNS AUDL «. ADDH41
alters auk. x, a, 6
ST*
STX
JSH
FE FFHA A Lft T Kb 1 LDx
FF FFDE A STX
• IhE NEXT 5
CE FF90 A GtlRbl LDX
STOKE ADDL
^AY Bt U NL Y 1 PAWAM
GET AODH
H.T. BASt OF
At/iJM-tJASE r X
440
U lt< "J
to 4r
Lji 1.1
too** i -base / *
ADJL+I-BASt»«
448
0 16D
a2 uC
AODL-BASE / x
tut
01OF
^^ Ob
•sli
GETRGu
450
0191
CE 02b5 1
RNbEHh
tG*
bmrngEh
J^h
452
453
1)197
IjE?KI,4
Lu*
AODm
itiu
019«
06
1NX
STX
ADOH
tSo
0 19E
39
RTS
«57
a59
Ub^
163
*tb5
019F
BD U2b6 1
NxTADR
066
01 A2
27 06
G10
«67
U68
01A4
FE Ft-uA A
ADR
ilb9
0U7
FF F FF 0 A
PHEG
*J70
<*7l
01AA
7E 010C I
JMP
RESTAK
472
u m
475
CUMMArtU
478
0 1 AO I
LOAU
EOU
481
0 1A0
C E 0 0 (i a A
LOX
>0
482
(i ido
FF FFDe A
STX
OFFSET
483
01B3
FF FFDC A
STX
AODL
484
OlSb
09
LOUFST
utx
465
0 1 b 7
Ff FFOE A
Six
ADOH
466
018A
60 02d8 1
JSR
NXTADR
487
01BD
27 IE
b£0
LHF2
468
01BF
FE F F DA A
LDx
ADR
489
01 C 2
FF FFD6 A
STx
OFFSET
6D 0266 1
JSH
NX TAOR
27 1 i
ttEO
LHF2
49i
01 C A
FE FFU6 k
LOx
OFFSET
STx
AOOL
CE 0000 A
LOx
«0
FF FF 08 A
STX
OFFSET
BSH
G6TRU1
LDx
AODH
498
01 06
20 U9
bflA
LOOFST
499
* BEGIN
UUTtH LUOP
BD 03A5 1
LHF2
JSR
RDRON
501
• SHORT
LllW 11
1 SKIP HDR recc
502
0 1 EU
60 7H
RDf'Rt
BSR
FINDS
503
SETS (
BO OoOO I
JSH
rtAITTY
01E5
81 30
CMP A
*' 0
506
»1E7
27 F 7
BEU
hOphe
» END SHUHT LUO»'
508
01E9
B7 Ft-t2 A
STA A
REC TYP
CLR
CKS^
510
0 1EF
BO 02'>E 1
JSH
NEXT20
DEC A
■ji
OEC A
5 1 3
OEC A
514
01F5
67 Fft3 A
STA A
COUNT
515
0 1 F 8
BD 029E I
JSR
NEXT2D
516
OlFb
87 FFOA A
STA A
ADR
517
01FE
BD 0296 I
JSH
NEXT20
518
0201
BB FFD9 A
ADO A
0FF8ET+1
519
0204
87 F.FD8 A
STA A
AD«*I
520
0207
66 F F DA A
LOA A
ADR
521
020A
69 FFD6 A
AOC A
OFFSET
522
0200
67 F F DA A
STA A
ADR
523
0210
t)6 FFE2 A
LOa A
REC T YP
524
0213
81 31
LHF3
CMP A
«'I
525
0215
26 14
BNE
LHF4
526
527
• LOAD
DATA RECOKO
526
529
•BEGIN
JNTR LUUP
530
0217
8 0 029E I
LDR10
JSR
NEXI20
531
TAPE.
532
021A
FE F FDA A
LOX
ADR
531
021D
BD 03AF I
JSR
SETOFF
514
0220
08
INX
535
0221
FF FFOA A
STX
ADR
53b
0224
7A FFE3 A
DEC
COUNT
537
0227
2E EE
BGT
LOR10
536
*ENO UNTIL LUUP
539
0229
to Cm
BRA
LHF9
LHF 4
CMP A
»>9
t i
BNE
BAOTAP
542
BO 01 1C I
JSR
CHEKSM
544
0232
Bb FFE2 A
LOA A
RECTYP
5«5
0235
81 19
CMP A
26 A4
BNE
LHF2
547
548
•END UF
OUTER LOOP
549
550
0239
BO 039B I
JSR
ROROFF
551
023C
CE (I26F I
LOx
KMEDF
552
02iF
7E OOtiO 1
JMP
MSGMOKI
553
554
0242
3D 039B I
BAD 1 AP
JSH
ROROFF
555
55b
024S
CE 0281 I
LOX
*MTAPER
557
02U8
SU8R
PMSG
558
559
* ACCEP1
' HQ COMMANDS UNTIL US
5bl
D£u
It f F"E* *
INC
ECHO
5b2
563
0240
BD 0400 1
8T1
JSR
rKAlTTY
564
0250
20 FB
BRA
BTl
565
566
567
566
« FIND S
577
0258
61 51
CMP A
»'.S
26 F9
BNE
FS10
579
•EnO LOUP
025C
19
ft TS
561
582
* MESSAGES
583
564
0250
11241
Mfl ADR
CHAH
/BAO AOR/
025F
»l«20
U261
11144
02b3
52
585
0264
04
BYTE
56b
02b5
52H1
MRNGER
CHAR
/RANGE ERR/
0267
4£47
0269
452ti
02bB
U552
0260
52
587
026E
04
BYTE
588
026F
0271
'15'lF
MEOF
CHAH
/EOF/
S89
0272
OH
BYTE
590
0273
3F3F
MUUES
CHAR
/????/
0275
3F3F
591
0277
04
BYTE
592
4l4B
MCSER
CHAR
/CkSm ERR/
0J78
027C
20il5
027E
5252
593
(1280
OH
BYTE
594
0281
511111
MTAPER
CHAR
/TAPE ERR/
0283
5045
0265
2045
0287
5252
595
0239
OH
BYTE
59b
028A
5339
MP EOF
CHAR
/S9030000FC/
028C
3033
AlH)H.t,E.AUOL
RA.tIGE ERR *1SG
PRINT MSG 4 ABORT
AJHiflNAl FftO* T 1013
(in interrupt hanolerj
ANY OPERANDS?
NO, USE DEFAULT.
YES.
IF ONE. IT'S OFFSET
A NO T M E R ?
NU.
YfcS. FIRST T*U are HAnue
GO TRY AGAIN FOR UFFSET
TURN UN READER
RDS
FINO START OF RECORD
ECHO)i=o on Entry
RETURNS t A J : = f T V m>
IGNORE HDR RECORDS
SAVE MECORD TYPE
SAVE BYTE COUNT
READ AOR FIELD FROM TAPE
1ST BYTE
STORE IN MEm(x>, VERIFY
CHECK CKSM
GET RECORD TYPE
EOF RECORD ?
NO. CONTINUE LOOP
PHW *UPt. CAB*
ESC CAUSES ABORT
116 INTERFACE AGE
FEBRUARY 1977
Advanced Microcomputer Products Presents
— „j2i°™Jr«
8K RAM BOARD $198.00
ADM
* MICROPROCESSOR PRODUCTS
t*> Htn
tn IM7401 16 U '«W
5M iMl+M *UL HP!
f w> i"ly urw 15. 94
D IP
61 on"
33 H
SPECIAL
BUY tO OF THE FOLLOWING
AMD YOUR PRICE IS
boboa 310 »
till A 10
AMD 9112 Z30
RF MODULATOR MODULE
uv> w r e>i*".i j-« Wff ¥p»Zw t B .95
VtC -ISrtH
* NEW PRODUCTS
NEW FROM NEC Mic
mputer! FIRST TIME OFFERED
* I C MARKET PLACE *
0372 Floppy Disc Controller Chip . S75.00
0371 Mag. Tape Cassette Controller Chip 65.00
Application Notes (26 pages) . 6.95
Gl AY3550 4» Digit DVM Chip . 29.95
GIAY3600 Keyboard Encoder 9.95
Intersil 8038CC , , , ".95
AY3507 9.95
R0 32513 Char Gen 9.95
★ LINEAR
LM106H
LM301CN
LM305H
LM305AH
LM306N
LM 07CN
LM307H
LM308M
lm308cn
LM309H
LM309K
IM3J0CN
LM310H
LM3111I
LM311CN
LM112H
LM318H
LM318CN
LM320K 5
7402N
7403N
7404N
740SN
7406N
7407N
740»N
7409M
7417N
742«W
7421N
7423N
742SN
7426N
7477N
*XH
7432N
7433N
7437N
743»<
7440N
7441N 1
7447N
7443N
7444N 1
LM320K 17
LM320K 15
LM3201 S
LM320T 52
LM320T 8
LM320T 12
LM320T 18
LM370H
LM373N
LM377N
* 7400 TTL
4125N
74KW
7451N
7453N
7454N .76
7470M 45
7472N .30
7473N 30
7474N 30
7475N 69
747BW 4?
7480* 70
748ZN »S
74«3N 95
748SN B9
7486N 28
7489N •'■»
7490N 60
7491N 70
7492N 59
T49W 79
7494M 79
7496M 79
7466N .79
7497N *3.75
74126N
74132N .70
74141N 88
7414SN .70
74147N SI 59
74148H »1 29
74150N St. 15
741S1N
ALTAIR /IMSAI COMPATIBLE
8K MEMORY
THE SAME BK BOARD OFFERED TO THE
SCCS GROUP PURCHASE NOW OFFERED
TO YOU AT THE SAME LOW LOWPRICE'
SI 98.00 COMPLETE
ltYoudei.re91L02APC Plcaie add S995
74153N
74160N
74161N
741S2N
74183N
SI 10
74107N
74109N
741Z1N
53
74I77N *16 25
74173N SI 40
74174N SI 25
74175N S125
74176N 79
74177N 79
79
74185N li.rP
74190N 1 1 jq
741S1N (I 30
74I92N i- m
74193N 3 ■ w
74194N >.
74195N K
74186N H
74197N -f
74198N (1 f
74199N II Mi
742S1N II 14
74279N * t Ip
B093N i-i
751SON :
75450M
75451N
75452N
7S4SJN
7S4S4N
TMS 4060 RAM S4.95
NEC 4096 RAM .„ 4.25
1602BUART 5.50
1502F FIFO 12.95
34702 BAUD GEN 14.95
NEC 5101C-E CMOS RAM 6.95
R032513CHAR GEN LowerCase ...14.95
WD 1671B ASTROS 29.95
WD 1941 DUAL BAUD GEN 9.95
WD 1771 FLOPPY DISC CONT 74.95
SPECIAL
10022PIN4096OYNRAM 3.25
100-22 PIN 4096 DYN RAM 3.25
100-16 PIN 4096 DYN RAM 3.45
6 BOO
STARTER SET
741S1N S275
74irrN 79
74164N S210
100 PIECES MIX TAKE 10% DISCOUNT
10O0 PIECESMIX TAKE 15% DISCOUNT
PLESSEY SEMICONDUCTORS
RADIO COMMUNICATION
*lAl£C S4U4C J 75
8 Bucks S6B00
ci III 6B0O8t>.1 CPU
III 6B70PIA
(II 6850ACIA
1161 2102RAMJ
SHI1C Hi
■., sij.
SLiZOC tv>
$L»jlC J%%
SlUX iVi
Sl P4.5C iK
11 Mi-: m
■.ir.'-nt. !■■
&L8&1C *■<■■
SLHK J 15
DIVIDERS
SPiSWtJ 6 95 SP86206 12.50 SP8640B
pmi'h 4 25 5P8671B 850 PS6G41B
16 00 SP8622B 6 50 SPB642B '
TMia}ft 14 50 SP8630B 2 0 00 SP8643B ;
&IW3*B 8 25 SP8631B 12 00 SP86468
7N4'I 17 00 SP8632B 10 00 SP8647B
■,i't".;j- 17 50 SP8634B 35 00 SPB6S0B ;
VH UP 18 00 SP86358 2750 SP8651B '
?H1» f0« SP8638B 22 50 SP8657B '
B0BGA
STARTER SET
.t S8000
ptCM nl aoaoABh.iCPu
(1) 82121 D Pon
III 8224Ci«v
II) 827BSyitemContici
FCN GEN KIT $18.50
63 Key Keyboard 19-95
19 Key Keyboard 11.95
Also ... we stock entire continental
specialties line new sockets and bus strips
for microprocessor design
Experimenter 600 (.6 spacing) $10.95
Experimenter 300 (.3 spacing) 9.95
All shipments first class or UPS in U.S. or add 5%
for shipping and handling. Minimum order $10.00
California Residents add 6% tax. Foreign add 8%.
PUTER
P. O. BOX 17329
IRVINE, CALIFORNIA 92713
PHONE (71419683655
00
o
05
SO
CA
45.
1
o
>
*
to
00
SO
SO
CRYSTALS
Microprocessors Timebases
TV Games Precision Crystals
Frequency
Case
Price
Frequency
Case
Price
1.000 MHz
HC6/HC33
4.95
13.000 MHz
HC18
4.95
2.000 MHz
HC6/HC33
5.85
14.31818 MHz
HC18
4.95
2.097162MHz
HC6
6.95
18.000 MHz
HC18
4.95
4.000 MHz
HC18
4.95
20.000 MHz
HC18
4.95
5.000 MHz
HC18
4.95
32.000 MHz
HC18
4.95
6.000 MHz
HC18
4.95
lOOKc
HC13
12.95
10.000 MHz
HC18
4.95
3579.45 Kc
HC18
4.95
* Exar
* i m.^-i irj-j rji »i I iha ton k
Fu.M.1 -PI lir^ijIU, Fl.l ^brikVM ll.lT^-f
* TIMING CIRCUITS*
* COMMUNICATION CIRCUITS *
XR555CP
XR556CP
XR2556CP
XR2240CP
XR120P
.90 XR1488
175 XR148
2 95 XR220B
* PHASE LOCKEO LOOPS*
* STEREO OECOOERS*
XR22HCP
XHS67CP
XR25567CP
XRt310P
XR1310EP
XR1800
* FUNCTION GENERATORS*
♦OPERA TIONAL AMPLIFIERS*
XR742CP 2.-oC>o«i"
XR4S5BCP D>«H.b
XR4136CP j.toi
XR4202CP P,o,im^,
2708 PRIME
only $49.95
Build Your Own MONITOR
Now in Stock - NEW
M3000 • 100 12-inch display module $229.00
M2000 • 155 9-inch display module $208.00
*Add $10.00 Shipping
MOTOROLA Exorciser, MEK6800DI
and MEK6800D2 Compatible Modules
$175.00
$ 72.00
$ 36.00
$350.00
$375.00
$350.00
$390.00
9601 16 Slot mother board - Inc. Conn.
9602 16 Slot card cage 19" rack mount
9610 Utility Prototyping Board
9615 4K Eprom Module (1702A)
9620 Parallel I/O Module
9626 8K Static Ram Module
9650 8 Channel Duplex Ansyn I/O
All assembled and tested. Not Kits
"MISCELLANY
UCOVAl'IFAH 1 I'
■■I- v * i(h-— 'IrH
« ililTi- - «ll M
;C*t^- •iKk
KEVB04H.D
lf^n<lt FOR Tl LIPmOME
Only .95
|pV CLOCHE CHIPS
MM5313 78P.I.S04-U
MM5314 ]<P.«CDt<i
MM5316 if'.: i 40INO A.jim l«oo.
MM5375 Owk O.o
J»-.i lie JM. fdk "MDX. Auu LF
o*fLV in k urst hme QfiE^ca
'VARIABLE RESISTORS
2550
55100
105500
505 up
If CORCOM EMI FILTER ROTARY SWITCH
4 COriLDW 7m f a Qhhr U K Cm,jut, PA 2001
FEBRUARY 1977
CIRCLE INQUIRY NO. 62
INTERFACE AGE 117
SOFTWARE SECTION
MICROCOMPUTER DEVELOPMENT SOFTWARE
028E
0290
0292
029<l
029S
0297
0299
0298
0290
3030
3030
46u3
04
0D0A
0000
0000
5331
605
606
co ;
627
628
629
630
631
632
631
63U
635
636
637
638
639
640
641
692
693
699
695
696
697
698
699
650
6S5
656
65?
65B
659
660
029E BO 0900 !
02*1 16
02A2 00 0900 1
02AS 36
02A6 37
02A7 30
02A8 C6 02
02AE
02AF
02B2
0285
0206
02B7
NEXT 2 U1GITS —
Rfc AO nExT 2 CHAR FwOM IIY TAPE AND CONVERT
(U mEX NUMBER IN A MEG. UPDATE CKSM.
wt turn upoated Cksh in b reg.
NtxT20 EUU ■•
JSR hAITTy
TAB
JSH KAITTr
i SET uP P AH AmS FOR CONVERSION ROUTINE,
* PUSH ASCII CmARS INTO STACK. POINT X AT STACK.
* SIT AsTYPt Uf CONVERSION AMD Ban OF CmAHs TO CONVERT.
LOA 6
SUUH
bCC
UPDATE CKSH
RESTORE STACK PTR
NEXT AOH IBUt-PIR/ ADR}
SET AOXiO OR WEXT NUMBER STRING STARTING
AT BUFPTH
LEAVES bUFPTR AT C R . OEL I H IT ER, OR FIRST
CHAR BE InEEN G - I .
LEAVES (A)s LAST CHAR SCANNED.
LEAVES CB)« LS BYTE OF ADR
Rt TURNS t C
0286
0288
028E
02C1
02C3
02Cu
02C6
02C8
02Cfcl
02CE
02DI
02D3
0205
0207
02BB I
7F FFOA A
7F FFDB A
BO 0385 I
2b 01
39
FF FF E0 A
til FFOA A
F7 FFOU A
Ab 00
EQU i
CLR ADR
CLR ADRtl
JSR PXISTS
ADR 1 1 0
IS THERE A PARAMETER?
YES
RETURN H/HQ PARAM CC=2
i SET UP PAHAHS FOR ASCII TO HEX CONVERSION
MAX. CHARS TO SCAN
LOA A
SUB*
acs
HIS
C0NH8
8UFPTR
AOR
AOHtl
SAVE RESULT
667 0208 7E QUAD I NA3
Bits and Bytes
COMPUTER SHOP
IN
PHOENIX
AFFORDABLE — OFF THE SHELF
WE FEATURE the EPA MICRO-68 and EPA
Expanded-68 microcomputers. These fine systems
are based on the popular Motorola 6800.
WE FEATURE the Micro-Term ACT-I keyboard
and Sanyo high resolution Video Monitor as a TTY
replacement, for the lowest possible cost CRT.
ALSO ... we sell a full line of EPA boards and
gcomputer peripherals as well as a large selection of
books and magazines.
OPEN EVENINGS AND WEEKENDS
6819 North 21st Avenue
Phoenix, Arizona 85015
(602) 242-2507
67S 02DB A6 (
6B8
689
690
691
692
69J
69U
695
758
759
760
CIRCLE INQUIRY NO. 39
815
816
817
61S
819
820
625
626
827
828
i OUTCh * PRINT CHAS IN A
> uutchx * print Char at mEh(x)
IF OIAK * 'CR'. FOLLOrt WITH LF l
OUTCHX LOA A 0,x
0200
02DE
02EI
02E2
02E4
02E7
02E9
02E8
F6 FBCt A
57
24 OA
F6 FBCF A
CI IB
26 05
7E 00AU I
OUTCM EQU ■
i first check for esc
psh b
LOA b
asr e
ace
LOA II
CMP tt
A C I AS
02EE
02F0 Bl 00
02F2 26 OE
02FU 86 OA
02F6
02F8 HIF
02F9 C6 04
02FB
02F0 5A
02FE 26 FB
0300 86 00
OC10
ACIAO
• ESC
OC10
ABORT
3UBR PUTA
CHP A «CR
BNE 0C20
BNE
JMP
LOA A
SUBH
CLR A
LOA 6
* BEGIN LOOP
OCLOUP SUBR
DEC B
BNE
* ENO LOOP
LOA A
ACIA INPUT STATUS
CuRORF
NO INPUT
READ ACIA
NOT ESC
POINT CHAR
NOT CR. RETURN
PRINT LF
PRINT 4 NULLS
UC20
PUL b
PRINT CH.LF # NUL L
OUTCM PRINTS LF AFTER CR
: PUNCH AODL.AUOH
PUNCH mEHOky CONTENTS BETnEEN AOOL I AODH
IN HEX FORMAT
030B HO 0160 I PUNCH
0308
030E
031 1
0313
031S
011B
FF FFDB /
60 AS
27 06
FE FFOA I
FF FFOB i
BSR
BEO
LOX
STx
GETRNG
• 0
OFFSET
NXTADH
PhF 1 5
AOH
OFFSET
HE AO AOOL I ADOH+I
ANY OFFSET?
NO.
YES.
734
735
736
i PUNCH DATA HLCOROS UNTIL AOOL - AODH
CALCULATE UATA LENGTH
031B
F6
FFOF
A
PHF 20
LOA b
ADOMtl
031E
FO
FFOU
A
SUB b
ADDL+1
0321
86
FFOE
A
LOA A
AODH
0324
B2
FFOC
SBC A
AOOL
01,27
26
0*1
BNE
PUiYOlO
0329
CI
1L
CMP 0
• 30
032B
23
02
BLS
PUN020
0320
C6
It
PUNO10
LOA b
»30
0 32F
5C
PUND20
INC B
0330
5C
INC b
0331
5C
INC B
0332
F7
FFE3
A
*STA B
COUNT
0335
CE
0295
I
LOX
•MCRLFS
0318
SUBH
PMSG
035A
5F
CLR B
0336
CE
FFE3
A
LOX
•COUNT
0J3E
80
m
BSR
PUNBYT
0340
37
PSH 6
0341
FE
FFOC
A
LOX
AOOL
034u
B6
FFDB
A
LOA A
OFFSET
0347
F6
FF09
A
LOA 6
OFFSET*
03flA
SU8R
AOOABX
03«C
FF
FFOA
A
ST x
AOR
034F
CE-
FFOA
A
LOX
■ AOR
0352
33
PUL 6
0353
80
IF
BSH
PUNBYT
0355
80
ID
BSR
PUNBYT
0357
FE
FFOC
A
LOX
AOOL
* PUNCH
BYTES FROM MEMO
* BEGIN
LOOP
035A
60
18
PHtClO
BSR
PUNBYT
035C
2E
Ft
BGT
PREC10
MIN(30. ADOH+1-AOR)
B I ■AODM-AODL
OIFF .GT.30
COMPUTE OFFSET ADORESS
PUNCH FROM AOR '
(INCREMENTS )
IF CUUNT=0)
035E
0361
0364
0365
0367
0369
036C
036F
FE FFUC A
BC FFOE A
26 AA
COM B
STA B
BSR
LOX
787 0371 7E 0041 I
802
803
804
605
606
0374 EB 00
0376
0378 7A FFE3 A
037B 39
0,X
PUNBYT
AODL
AOOM
PHF20
MONEN1
PUNBYl (MtM(X) .COUNT/ChSmJ
PUNCH BYTE AT MEM(X) ANO ADJUST COUNT AND CkSm.
CCsZ IF COUNTsO
ADD B
SUbK
DEC
P4HEXSI PH1NF 2 BYTES AT X AS 4 HEX ChARS t 2 SPACES
PS>itl---HMM 1 ItLiNv
0380
0JB2
0384
h space loa a iblank
subh put a
RTJj
PARAM EXISTSIBUFPTR)
INC BUFPTH UMIL CHAR
LEAVE A a MkM IBUFPTR)
SET Z IF NO PARAMETER EXISTS
{•BUFPTR] i BUFPTR
(X) * BUFPTR
ALF'HA OR CR
0365 1 PXISTS EOU
ENTRY FOR (•BUFPTRJiBuFPTH
118 INTERFACE AGE
FEBRUARY 1977
SOFTWARE SECTION
MICROCOMPUTER DEVELOPMENT SOFTWARE
0388
0J8A
03BC
038E
0390
0392
0J9J
039$
039a
039A
25 07
81 00
27 03
LDx
PxISTX tUU
■BEGIN LOOP
PJtl UD« ft
8U8H
BCS
CMP A
BEU
INX
BRA
•END LOOP
PX2 STX
CMP «
RTS
ENlRY FOR (X) = 8UFPTR
IS CMftR ALPHANUm ?
yes, Exit loop
IS CMftR CH 7
YES. EXIT LOOP
^OvE TO NEXT ChAR
3kt Z IF NO PARAMETER
ROF90 0390 I*
RT20 OObb 1
RUS10 0112 1
SETMEm 03CC I
3* 03E3 I
3REG FFF2 A
SnI20 OOCC I
ShIhan OOBE 1
vFt 0004 R
1A1TTY 0400 I
HON90 03A7 I*
R!3u 00e>9 1*
SAVtSP FFE5 A*
SETOFF 03AF I
SM10 03tC I
START 0000 1*
Sfll30 00D1 1
SMVEC FFfA A
MO 0400 I
xRtG F FEE A
RSHSH 0000 R
RT90 OObC I*
SAVE* FFE7 A*
SETOUT 03CU I
SM30 03FD I
START1 0007 I
SnlaO 0008 I
TCOUNT FFEA A.
*20 0U09 I
ST10 005F I
RU80UT 007F A
SETMl 03E2 I
SETPUL 03C8 I
SMS 03E6 I*
SuBxAB 000b A
S«150 00D6 I
US«I FFFU A
«30 0"hS 1
CHECKSUM 3 075E
RDR OFF
TUHNS TAPE RDR OFF:
ACIA RTS J/P HIGH
ALIA Char S13 (0C3J
'Id t^HUJSH *M a*"MIiC5. THIS *:.5i.«h.i
039B
0390
03A0
03A2
03A4I
039B
8b 01
B7 FbCE
8b 13
RDKUFF EQU A
LOA A «J01
K I J F 9 0 STA A ACIAC
LOA A
SUBH PUTA
RTS
RTS HIGH
SET ACIA COnT REG
SEND TT Y HOR CONT CHAR
I UI/04//6 9:2b PHU* BUHNEH ADDITION TO PHOTO
LOC OBJtCT m SOURCE ST A TE MEf«T
868
869
870
87 1
872
873
874
875
878
880
03A5
03A7
03AA
03AC
03AE
03AF
0380
0363
Oidb
oiba
03BA
OiBO
03C0
03C2
03CU
03C5
03C7
03C9
OiCB
03LC
03CE
0300
03U2
0 305
Oiud
22 OA
Bb Frot
Fb FFDF
20 1 /
32
OiCC
FF F F OA A
CE FFOA A
BO CI
RDR ON
TURNS TAPE READER ON
ACIA RTS 0/P LOW
ACIA CHAR 111 (DC1)
03 As I
8b 4l
B7 F6CE A
86 1 1
I StTUFF
ACIAC
' «Sli
PUTA
BHI
LOA A
LOA a
SUBH
BCC
.ETUUT PUL A
LOA A
SUBH
BRA
EH'UL PUL A
iETMEM EOU
STA A
IMP A
BEU
VERIFY ERROR
SU
LDX
oSR
BSR
PbtUH LOx
JlWP
ADUL
ADOL ♦ 1
SUBXAO
SETOUT
ALh)M
ADOHtl
SUBXAB
SETPUL
• 255
PUTA
SETMl
AOR
»AOR
ROROFF
P<tnExS
smBaOR
MSGABT
RTS LOW
SET acia cunt REG
SEND TTY RDR CONT ChAR
Ib-dIT SUBTRACT
TOO LOW
HIGH LIMIT
OUTSIOE RANGE LIMITS
TYPE DELETE (HUBOUT)
TO SIGNAL FACT TO USER
OTHERWISE IGNORE STORE REQUEST
SET PARAM FOR PuhEX
TITLE PROM BURNER ADDITION T.J PROTO
P)<Om BURNER
VERSION 2.0 01/08/76
tttPfWiBAf l%tn if i«t.Kli^ "JC*Ji»jHt*i 1nch
Aijit^uL- uri tons
EUU
EOU
OPT
1SEL
ORG
RE F
REF
MONENT.GETRNGiNXTADR.PXISTS.RNGERR.PBAOK
PCRLF.PST' ACE.SE TMEm, A90HT,M0N1TR
Pf DM AO, ADR. AOOL.AODH, COUNT
BURN.MliVE .REAO.YFY.PINI T
i P1A LJCAIIUNS:
FBCO A t> I A E.QU
0001 A V50 EQU
0004 A f'RUH EOU
H'FbCO
H'F8C1-PIA
h' F8Ca-Pl»
l BUFFER {DEFAULT!
H'FCOO
• STANDARD R •
= l» EOU
TrRt macru Char
IF Char o
LO A A «CHAH
1ENO
CALL HK1NTA
M£NO
CALL MACRU ITEM
SM AOH BtIEI ,Btt£2. . . .
RSkSR CALL LOCATIONS
928
929
930
bO 02bo 1
27 OL
FE FFUC A
03EF
03F1
U3FU
03F5
03F7
03F8
OSFb
OiFO 7E O0U7 1 a*"Jk
OUOO
0U02
0'IOU
0U06
oyo9
OUOB
0400
OalO
0U12
oai5
81 IB
2b 03
7£ OOAD
70 FFE'V i
27 03
BO t2uD
N x T ADR
S«30
At)OL
AOR:= NEXT PARAM
SAVE AOR IN AOOL
AtiR : : NEXT PARAM
END OF LINE. ExlT LUOP.
x := ADO TO BE SET
a:=ls byte
memIx):=a, VERIFY
MOVE TO NExT ADD
Initialize pkum burner pi
fVA I T \ UR TTY ILHAR.ECmO) («ECH0) = EChj
RETURN fitXT TTY ChAR IN A
IF <«ECnOJ NOT 0 . ECHO Char
U«00 1 n A I 1 T Y
EDU
*LO0R UNTIL 1MJUT .NE. RUBUUT
SUbR
CMP t
BNE
JMP
CMP /
BEU
•END UNTIL LOUf'
tST
BED
JSR
W30 RTS
GETA
"ESC
H20
ABORT
•RUSOUT
nlO
ECHO
YES. ABORT
HUdiJuT ?
YES CONTINUE L00»'
SYMSOL TABLE:
ABORT OOAO I
ACIA I FFFb A
AOOL FFDC A
BAD I NP OOAO I*
80S FF8F A
6T1 02«D I
chEksm one i
CR 0000
A C I A A 0005 I
ACIAS FBLE A
AOR FFOA A
BAOTAP 02U2 I
BREAK 0002 I
OOAD I
OM10 0138 1
EOF 015D I
FS10 0255 I
GETRG3 018<J I
IRQvEC FFF8 A
LHF2 0100 I
LOAD 01A0 1
MCSER 027 8 I
MONENT 00 Ul 1
MQUES 0273 I
MTAPER 02dl 1
NMlvEC FFFC A
0C10 02EE I
OUTCh 02DO I
PHHEXS 03 7C I
PHF20 0318 I
PR 10 OOFS I
PREGS OOEE I
PUN8YT 037K 1
PUTA 00 11 A
PXISTX 0388 I'
READ UOOi R
FF90
FFER A
FFEB A
0082 I
013E 1
000 U A<
01AA
BuF
CKSM
CREG
OLIO
DM20
tOT
G10
GETRGU U19V 1
LAST FFFF A«
LHF3 0213 I*
LUUFST OIBb I
MEOF 026F 1
MONl TH 00«? I
MRNGER 0265 I
N A 1 02C1 I
NULL 1 016U I
0C20 0302 I
OUIChx 020B 1«
PdAOR 030L I
PINII 0005 R
PR20 0HJ2 I
PRUMAD FFH6 A
PUNCH 03ob i
Pxl 0388 I
KOPRE 01E0 I
RECTYP FFE2 A
ACIAC FBCE A
AOOABx 0008 A
ALPNUM 0013 A
BASE FF90 A
BREAM 0087 I
BUFPTR FFEO A
CONHd U015 l
LSI
OLOOF'
OM50
ESC
GETA
0129 1
007A I
015A I
OOld A
001U
GETrfNG 0160 I
L0R10 0217 I
LHFii U229 I
MBaOR 0250 I
MUNENl 00H\ I
MUVE 0002 R
MSGABT OOBO I
N A 3 0208 I
NULLS 0162 !•
UCLOOP 02F8 I
P2HEX OOOF A
PCRLF 030U I
PMSG 0012 A
PHEC10 035« 1
PRTXO 0009 A*
PUND10 0320 I
PX2 0395 I
RORQFF 039B I
RES?** t 1 OC I
ftClftO FBCF A
AD Dh FFDE A
AREG FFEO A
BLANK 0020 A
BREli FFEC A
BURN 0001 R
COUNT FF£3 A
C T AfjLE 008C, I
OM 0 1 3b 1
ECHO FFE9 A
FINDS 0252 I
GETHG1 OWE I
GO 019F I
LF 0 00 A A
LHf 9 022F I
MCRLFS 0295 I
MUNEND 0 0«7 I
MPEOF 028A I
MSGmON OOBO I
NEXT2D 029E I
N x T AOR 0288 I
OFFSET FFD8 A
P1HEX 0010 A
P H F 1 5 0318 I
PRl 00F3 I
PREG FFFO A
PSPACE 0380 I
PUN020 032F I
PXISTS 0385 I
RDRON 03A5 I
HNGERR 0191 I
Oaitt)
04a9
0U4C
Ou^F
0U52
0"»55
0U58
0U5A
0450
0460
QUbi
04b9
046b
04b£
0471
0474
0«75
OU77
0a79
047B
0470
047F
0481
0483
0485
Out)?
0489
0488
048C
Bb 38
A A 01
A7 01
8b 3A
A7 05
A7 07
0419
0418
0410
041F
0421
0423
0425
0427
0429
U42b
0u20
042F
0431 36
0432 80 OF
0UJ4 32
Otl3S Cb 08
0437 49
043S 3b
0439 06 16
04JB '19
0«3C
0U30
0u3E
043F
OtluO
LDX
LOAA
i JRAA
STAA
LOAA
STAA
STAA
CLR
CLH
C0><
LDAA
b I A A
HT3
■ PIA
• 8 ' 00 1 1 1 000
V50.X
V50.X
•B'OOl 11010
ppaM*i,x
PRO^t-3, X
PR0M*2,X
PH3M.X
PRJM, X
•9'ooiniio
PROM* 1 , X
TURN OFF 50V
R/rt TO READ
(HOPE NO OOUbLE-DRlvE HERE)
PROM DATA SET TO INPUTS
SELECT ADDRESS AS OUTPUTS
POINT TO AUORESS OUTPUT REG.
TYf'E A IN BINARY, ENCLOSED BY St-'ACES
0443 7E 0007 R t'SP
PSHb
PShA
BSR
PULA
LDAB
HOLA
PSHA
L(JAA
HOLA
TYPE
IF
LOAA ■
1ENL)
CALL
3«I
BYTE
PULA
OECB
aNE
PULB
SAVE B
PRINT LEADING SPACE
8 DIGIT COUNTER
PRINT ONE MORE SPACE
RAM/PROM AOURESS SETUP & VALIDATION
CE FCOO A
FF (JDOO H
CE FEOO A
FF OOOE R
7F UOOF H
80 0003 R
27 Ob
BO 0U01 H
7C OOOF H
FE 0000 R
FF OOOB R
BO 0002 R
27 06
FE OOOC H
FF UOOB H
CE OOOB R
00
Eb 07
E2 05
Ab Ob
A2 0«
81 02
2C 08
EB 01
A9 00
7E 0004 R
STX
CLR
JSR
BEO
JSR
INC
LOX
STX
JSR
BEQ
LOx
STx
LUX
SEC
LDAB
SBCB
LOAA
SBCA
CMPA
BGE
ADUB
AOCA
EURA
4N0A
URAM
AOOL
•RAM+512
ADOH
COUNT
PXISTS
:A1
GETRNG
COUNT
ftDOL
PROMftD
N X T AOR
:A3
ADR
Pr0«aO
■PRJMAO
INTITALIZE POINTERS TO OEFAULT RAm
DEFAULT PROM AOORESS
IS SAME AS START
TRY FOR PROM AOORESS
NO.
VERIFY THAT RANGE <= 512
(FORCE BORROW)
=ADDn*l
=A0DL*1
SrtUULO BE 1 OR 0
TOO BIG.
ALSO SHOULD NOT OVERSTEP PROM
IT DOES.
ADDRESS RANGE ERROR
1YPE RAm & ROM ADDRESS & DATA
FEBRUARY 1977
INTERFACE AGE 119
SOFTWARE SECTION
MICROCOMPUTER DEVELOPMENT SOFTWARE
206
207
208
209
210
211
212
22o
225
226
0«8F
0o92
0492
0u91
****
(NO
o«Ai
0oA5
0UA7
ooA9
U 0 0 9
OuAA
OOAd
y«A£
undo
UUB2
0OBS
0UB7
lIuUA
uubC
OoBF
0uC0
0XC1
0UC2
0«C5
U«C5
0«C7
0«C*
OoCB
OuCU
OuCE
QHD1
0*03
ono5
0UO7
0«l>9
anot
0OE0
0«E5
OoEd
OuttJ
OoEa
quid
OOtE
OuFl
(JuFU
OilFS
0uh8
OOFB
0«FU
0500
0502
0505
0507
0509
050A
050C
0500
050F
0510
0511
05U
0517
051A
OSlC
051F
0521
0525
0526
0528
052A
0S2C
0S2E
052F
0 5 31
05ii
0515
0537
!}5J9
0S5B
055l)
if I
10
FE OOot) H
Ab OH
80 95
86 FbC.6 A
80 90
CE OOUo H
Ab 01
27
05
LUAA
dSH
LUAA
LUA*
ASLA
WIS
P8d 1 N
PR0Mf2»PlA
P881N
BP30MAD
POHEX
pi;rlf
IrPE ram ADDRESS
TmEN PRO* DATA
•vOw IF AOOHESS ILU* 8)
dues i. or mmo ram address,
= AODL
>»HInT PROM ADDRESS
E<M t-Jn fin,
■ kHOM ADDRLSS SETUP & DATA Rt AO
A(;0«S
B? FBCo
Ab 00
CE FbCO
A8 0/
do OL
A 8 07
a; 0 7
80 20
2o 02
80 3A
80 11
80 0*ue 1
80 U2
ft 0000 R
ttt) 0O08 H
80 02
20 Fa
FF OUUO H
8C OOOt R
2b 85
7E OOOA n
LOAA
SIAA
LDAA
LUX
ASLA
lnCA
" S L *
ASLA
EURA
Af,UA
EURA
S T A A
LOAA
KTS
crPRO-AD
1 . X
PRDM* J, x
PR0m*5,x
PROMf 2,x
JSk RASV
bSH VFY1
bCC !N
8SH JVER
8SR INCAD
8RA :v
LG" 0 81TS
MIGt( BIT
INSERT 1NTU CONTROL
READ DATA
GO SETUP ADOHfcSSES
VERIFY OmE LOCATION
SO ERROR, OH PRINTED.
PRINT FIXABLE ERROR.
INCREMENT ADDRESSES
PROM READ
.At JSR RASV
BSR AOORS
LDx 4QDL
JSR SET^EM STORE IN i
BSH 1NCA0 NEXT t
:R
INCREMENT RAM/PRO^ ADDRESS POINTERS
STx ADDL
CPx ADDh
8NE AOORS
ill .JMP M0N1TR
PRO* OAIA VERIFY, ONE I
U dSH ADORS
LUX AOOL
CmPA o.X
6Eu ;x
COMA
ORA A o,X
COMA
BNE
EXIT 10 MONITOR
7E OoBF 1 JVER
IjvCA
8T3
JMP
FROM BUHNER ROUTINE
80 Outlb 1
70 OOOF H
2b 18
7F 0O0b R
80 91
2b 75
CE uoob R
eC 01
26 F5
oC 00
Ab 00
60 C5
29 CO
FE OOOU f
BNE
CLR
8SR
BNt
l.UX
INC
dNfc
INC
LOAA
RUHA
dCS
CLK
BRA
BSH
LDAb
BSR
BVS
LQx
PROmAD
AOORS
NOGOQD
•PrOmAO
NO, TYPE ERROR
DO BLANK CHECK
AHA If IS.V T
1'iOifc. «EfjNJROM AtJORESS
ADVANCE H NEXT
SET TRY COUNTER
CHECK THIS L0CAT1UN
CAN' T F'ROliRAM | TO 0
Vectored from page 108
A0D2
B
HMIN
CFCHE
COPT
CST R
04DD
DEC P T
01 VIT
DTS r 2
FP1
F INI T
FXL 1
GFTA
r.OUN
INCR?
L003
LDlV
LHUL
LXFR
0007
09DF
0000
3A22
OB^.C
0OF<.
0C71
0B06
0EA6
00C6
0912
OFOF
OODA
OA32
00A1
093B
)035
0 A'iH
095T
0900
0A5F
0C24
MOL T
NNZRr)
NZRD
OUTR
psw
REP5
TEN
TOP
TST 1
TSTR
USFIT
HOVR
ZCHK
0F70
OC82
OCCF
OFFD
0006
')f.26
0E1F)
0F78
OCFB
0FJE7
OFBD
0B71
OAOA
A8CH
ADD?
RBCH
Ch AR2
COPY
crwn
OFCR
OLST
F
E0J2
F INUP
FX12
GE r F. X
fjOT V
INC* 3
INP
I NT5
L D ) J
I 12.1
LAOS
LL TR
LHOP
HUL T T
NORM
OFLWI
nv?p.
PTVAL
REJ>6
SCHAR
5P
TtN5
TRY 1
TSTB
THOO
WCHAP
ZMCHK
SYMBOL TAHIF
0A3<.
0')D6
0A3P
)i31
0F40
0C02
ODE 3
OBI D
0AE9
0003
J99C
ODdA
OAR 3
one t
0CF8
DfJC3
OFF A
0F5F
OA/, E
0962
097F
ODE 5
30 )fc
0F67
oor.o
0051
OA AD
0fl76
0C1 7
or<> 7
'3AB9
OACB
0006
OF I 7
DCF6
3C )B
ODCC
0R9F
0B63
OADA
AC PR
AORS
BChk
CCM1
CR IN
CVRT
DCMP
OF ,<L
DRST
ENT1
iauL
FLOAT
GCHAP
G€ TN
INUF 1
IN PHP
INTR
L001
L129
L A SO
LMCM
L s r T
M ADD
MCHK1
M(1R0
Nl
NO PHI
OFLHC
PLSV
READ
SAVFN
SH10
STCPC
TL OPP
TRYP
TSTEX
UFLWI
HINO
H7FR
ZPOtT
0E1 E F
OKE 1
DAF2
OA 16
09M)
0C9A
OaF'.
3ft CE
0AF8
Or 10
Of»<H >
0A05
OM'tl
OF 2A
00 0
■J\ B'«
002^
0A7F
OA'.H
OA 5 1
3A32
OA 5 7
0LW9
3A M
OF68
0-1A6
Of- 51
OA AF
3C 5B
009C
OODB
OF 19
098C
3C5 3
On 7C
0FE2
3E 36
0flG8
0B7F
0B8D
Of- 30
30 u
CCMl>
C >M2
CSIGN
0
0CO1"
DI on
0SU!1
TLT SO
OCHR
INCH
INPUT
Kf'GO
L302
L13L
LDCf>
LMCP
LSU3
MA NT
MDGN
f SFH
NCHK
NOT 3
OKI
POPO
PEP3
SCALE
Shift
sunz
TLP2
T q Y TN
T STN
UFL/JC
WMAMT
wz:rc
onnF
Of 55
3CB0
3B5iJ
0A23
0C6'1
0002
0F3A
)f330
nti2o
OCOA
OE IF
0F15
) □ A )
0Bli6
0E21
')A7(.
OA IF
0A5't
3C39
OC',0
0963
)9EF
0D03
0C79
09B*.
39.\A
0D22
•39 2 7
0E-i3
0F80
39B9
C070
0F6F
jrt 7
0Cf>2
0P98
OBAF
227
0500
Ab
Otl
LOAA
Of x
228
05O2
CE
f BtU
A
LUX
f PIA
229
05uS
A7
STAA
PH3«*2, x
250
05u7
Ab
05
LDAA
PRJM* 1 , X
251
0509
8o
F I
AMOA
*8' 11110111
S6I H/A TO »
252
0508
A 7
05
SIAA
PR3M • 1 , x
235
05OD
Ab
07
LDAA
PRDm+J, x
TURN IT ARC10ND
25«
OSUF
6o
FB
ANDA
«8' 11111011
CTO OUTPUTS)
255
0551
A7
u7
STAA
PR3Mt5.x
25o
0555
6F
Ob
CLR
F k3«*2. x
257
0555
05
Ob
CLM
PUO^+2. x
258
055/
57
F'Srib
2 59
0558
Cb
1«
LUAd
«20
2k0
055A
du
3f
BSH
^SEC
CLEAR 1 1 MEM
2«l
055C
80
BSH
MSEC
I T 1 MS BETWEEN PUI.SES
2«2
0556
Ab
0 1
LOAA
V50, x
205
05b0
HO
F /
ANOA
» B 1 1 1 1 1 0 1 1 1
St! HIGH VOLTAGE
2uu
05b2
U 1
SIAA
V50. x
205
05b«
6l>
5b
BSH
MSEL
5 MS PULSE OURATION
20 b
U5bb
81)
53
^SEC
2o?
0568
80
31
dSR
MSEC
20b
056A
b4
56
UHAA
bB'OOSI 1000
TURN OFF HIGH VOLTAGE
209
05bC
01
SIAA
V50,*
250
05bt
Sa
UEL8
251
05oF
26
Ed
BNfc
kW
20 TIMES.
252
0571
bF
06
LLR
PR3^»2,x
CONvtRT uutpuis to inputs
255
0573
A6
05
lDaa
PRJ«» t,X
TURN OFF *HlTE
250
0575
84
5o
UHAA
sd'OOli 1000
255
115/7
A7
0 -5
STAA
PR3M»1 , x
25b
10
IF
OELAY
•OELAY
258
0578
60
It
I.,
BSH
«S£C
DELAY (B) MS
259
0570
5A
Dt CB
2b0
Or>7t
2b
F d
dNE
: .-.
2b 1
ltNO
2b2
0S1O
53
^ULO
2b5
0581
l>0
0500
1
JSR
VFYI
ChECk 11:
2b«
29
BVS
: J
BAD BIT SHOhEO UP
2b5
05S6
2/
AD
dLw
: 1
G 1.100
2bb
0568
21
TYPE
IF
21
21
N0» TYPE A NAK
0
0568
8b
15
LUAA
IENO
• 21
0 58 A
CALL
PR1NTA
058A
3F
*
3wl
0588
1 1
BrrE
PR1NTA
2b7
058C
CE
FbCO
LDX
■ PIA
2b8
05BF
5A
UECb
«flD tttf *6AH
269
0590
2b
Ab
BNE
tL
270
0592
80
0«8F
1
JSR
VERR
271
0595
1
(J
EUU
GIVE UP
272
H It
7E
0005
R
JBAO
JMP
PBAOR
PRINT "BAD ADDRESS" AND QUIT
275
P5-3U
7E
0009
H
MWOOU
JmP
ABORT
27«
275
« UNE
MILLlStCONU DELAY
276
277
0598
60
05
MSEC
TS1
PR0M*1,X
ri AIT FOR CA1 TO FLOP
278
0590
2A
Ft
BPL
MSEC
279
059F
Al
Oo
Cm^a
PRO*,*
CLEAR IT <«ITH A DATA RE AD 1 )
280
05Al
39
HIS
281
282
283
280
1
IF
MOVER
285
05A2
80
OLiOl
R
JSR
CETRNG
GET SOURCE ADDRESS RANGE
286
05A5
80
0002
H
JSR
N X T ADR
GET DESTINATION STARTING ADDRESS
287
05A8
27
EB
8E0
JBAO
EHROH IF NONE
!"
LUX
AOOL
289
05AO
A6
10
LDAA
O.X
290
05AF
FE
oooc
R
LDX
AOR
STORE IT WITH VERIFY
29 1
0582
80
JSK
SETMEM
292
05d5
06
1NX
295
0586
FF
uouc
H
STX
AUH
29«
0589
80
OuFl
1
JSR
INK
COMPAHE TL) END
295
058C
20
EC
BRA
1"
MORE
296
Else
297
M(JvE
tliU HAM
298
UNO
END UF MOOUlt
SYMBOL IABLE:
ABORT
0009 R
OOOC K
EXIT O.lFl) 1
JBAO U5?5 1
MOVt 05A2 1
NXTADH 0002 R
PCRLF 0006 R
PROM 0004 A
exists oou5 h
RNGEHR JOOu X
v F t 0 o C t 1
ADUH OUOE H
BORN 05UI I
GEIH*G 0001 R
JVER 0511 1
MOvER (pOOI A
P«HEx 0010 A
PIA FtJCO A
PROMAO 000b ft
H*«t FCuu A
6t Tie OOue k
• Ml 05 0 0 1
AODL
COUNT
1NCA»
HUNENI
MSEC
PBBlm
P1N1T
P6P
hASv
OOOD R
OOOF R
ODEA 1
AOORS 0«B2 1
OELAV OOOA A
INK 01F1 1
HON I T R 0<DOA R
NOGOOO 0598 I
PBAOR 0005 R
PR1NTA 0011 A
PSPACE 0007 R
-'. * : ■ . "1" I
vt#Hi 9ttr t
NU LHHOhS, NU AtHlilf.GS, THIS ASStMiiLY
VECTORED FROM PAGE 101
AGE* DEC. 1976* V0L.l*#l3.
8080 AMS80
6800 F3AFCMP
8080 ECMSO
AMSAT 8080 STANDARD DEBUG
MONITOR BY RICHARD C ALLEN
i JOE KASSER - BYTE If 13*
SEPT. 1976* V0L.2*fl.
SUBMITTED BY JOE KASSER.
BASIC ALGORITHMS FOR COMMON
MATH FUNCTIONS BY MICHAEL
P. BURTON - INTERFACE AGE*
JAN. 1977* VOL. 2**1.
MICROCOMPUTER STOCK OPTIONS
BY EDWARD CHRISTIANSON -
INTERFACE AGE* FEB. 1977*
VOL.2* #3.
BMRNG RANDOM NUMBER GENERATOR
BY BOB MARTIN - INTERFACE
AGE* FEB. 1977* VOL. 2**3.
RNDFGCST RND FUNCTION GENERATOR
CHI -SQUARE TEST PROGRAM
BY BOB MARTIN - INTERFACE
AGE* FEB. 1977* VOL. 2**3.
808(3 TTMOCSR
8080 TDOMP
8080 MEMORY OBJECT CODE
SEARCH ROUTINE BY T. E.
TRAVIS - INTERFACE AGE*
FEB. 1977* VOL. 2**3.
8080 OCTAL MONITOR PROGRAM
BY THOMAS E. DOYLE -
INTERFACE AGE* FEB. 1977*
uni .s***n.
31 -PTSL
31-PTOD
31 -PACK
32-PTBL
32-TEXT
32-PACK
33-PTBL <
33-HCBLF
33-HCBLF<
33-TEXT <
33- PACK t
34- PTAL <
34-PTSL <
34-TEXT <
34-HCALF
34- HCALF<
35- PTBL <
35-HCBLF<
35-PACK »
36-PTAL <
36-PTSL <
36-TEXT <
36-HCALF<
36-HCALF
36- PACK i
37- PTAL <
37-PTSL <
37-TEXT <
10.00+0. 60+2.00
3.00 + 0. 18+1.75
.00 + 0. 24+ 1 . 00
.00+0.06+1.00
6.00+0.36+2.00
2.00 + 0. 12+1.25
INC. WITH PTBL
6.00 + 0. 36+2.00
5.00 + 0.30+1.75
1.00+0.06+1.00
1.00 + 0.06+1.00
INC. WITH PTAL
3.00 + 0. 18+ 1 .00
INC. WITH PTBL
3.00+0. 18+1.00
3.00+0. 18+ 1 . 00
1.00 + 0.06+1.00
INC. WITH TEXT
1.00+0.06+1.00
8-00+0.48+2.00
6.00 + 0.36+1.75
2.00+0. 12+1.00
120 INTERFACE AGE
FEBRUARY 1977
SOFTWARE SECTION
SHORT SOFTWARE ROUTINES
AN 8080 MEMORY OBJECT
CODE SEARCH ROUTINE
By T. E. Travis
NEED FOR OBJECT CODE SEARCH ROUTINE
When attempting to modify software, it is often
necessary to find and change every occurrence of a
particular instruction sequence or every reference to
some specified memory location. For example, if one
wished to modify a teletype-oriented BASIC to use
one of the available memory mapped video boards
such as the Polymorphics VTI-1 , it would be necessary
to find all IN and OUT instructions directed toward the
teletype port and change them to calls to input and
output drivers for the video board. Since, in the case of
vendor supplied software, a source listing of the
program to be modified is often not available, a
program to search through memory looking for and
identifying all such calls is necessary.
SEARCH PROCESS
The program presented here requires no peri-
pherals and will search memory starting at any desired
location looking for a byte pattern of any arbitrary
length. Every time the pattern is found, the program
stops with the address of the first byte following the
pattern in memory locations 26 and 27 (hex). Once
those locations have been examined and noted, the.
program can be restarted and it will continue its
search.
APPLICATION
As listed, the program begins at location zero, but it
can be moved to any place in memory by changing all
of the three byte instructions to point to their new
targets. To use the program, load the starting address
into memory locations 26 and 27, the length of the
pattern into 28, and the pattern to be sought into 29 to
29 + n where n is the value stored in 28. The program
is then initiated at location zero and will stop when it
encounters the desired pattern. This will always
happen because the program will eventually wrap
around memory and compare the pattern with itself.
SEE MICROCOMPUTER SOFTWARE
DEPOSITORY PROGRAM INDEX FOR COPIES OF
THIS PROGRAM.
HOflO MACRO ASSEMRI EK , VFR 2.3 CPRORS = 0 P\GE I
0000
0000
0001
0003
0006
0009
OOOA
OOOA
000ft
000 r.
OOOF
001 0
00 t 1
00 1 A
0015
001 A
OOlfi
OOtR
001 c
001 F
0027
0022
002 5
PPOGRAM NAME: SERCH (flOHO MFMORY SEARCH ROUT INF)
PPOGRAMvfR; t. E. TFAVIS
STORAGE REOU IRFMENTS: '* \ flYTES PLUS PATTFRN
I/n REQUIREMENTS: N'INE
REUUlRFn SUPPURTING SOFTW.\RF: NONE
FOU
LHL D
EOU
L X I
COMPARE PATTEPN WITH
;L0AD STARTING AODRF.SS
;lOAD PATTERN AODPESS
M.UA0 PATTFRN LFNGTH
;M0Vf LENGTH TO R
;L0An PATTERN l)Y T r
ICOMPARE WITH MEMORY
; PRANCH IF NOT EQUAL
; I NC R F HENT MEMORY POINTER
; DC C R E ME N T LENGTH COUNTER
; BRANCH IF DONE
; I NCREMFNT PATTERN POINTER
;CDNTINUE TESTING
PATTFoN PiO NOT COMPARE, ADVAMCF MFmQRY STARTING ADDRESS
EOU I
LHID fiOOR
INX H
SHI 0 ADDR
JMP COMT
:L0AD STARTING ADDRESS
; INCREMENT
; SAVE
;STAPT TEST AGAIN
; PAT
;
EOUAl
TFRN DIO COMPARE
s
EOU
shl n
Hi T
0007
0001
oon t
ADDR:
LNGTH:
P ATRN :
; ME MOPY START ADDRESS
; PATTERN LENGTH
; T E S T PATTERN
WITH ADDR POINTING TO
NO P R (1 ( » R A M FPRDHS
80R0 MACRO ASSFMhLFR. tfER 2.3 FRPnoS = 0 PAGE 7
SYMR0L TABLE
0007 AnniR 0026 a oooo c 0001
OOOA CONT 0003 D 0002 E 0003
007? H 000* L 0005 LNf.T H 0028
0006 NOT F 0 0018 PATRN 0029 PSW 0006
0000 * SP 0006
FEBRUARY 1977
INTERFACE AGE 121
MICROCOMPUTERSiJK x g RAW^IWIriKL .
r^^^r f rn r i t t t i i r v • ' • i Wrn
it t iHr^mT
San Francisco Bay Area— where it all started— finally gets its act together.
7,000-10,000 PEOPLE ■ 100 CONFERENCE SESSIONS ■ 200 COMMERCIAL & HOMEBREW EXHIBITS
2 BANQUETS ■ SPECIAL INTEREST SOCIAL CENTERS
San Francisco Civic Auditorium, Northern California's Largest Convention Facility
YOU Can Be A Part Of It:
■ Some of the things you can do are:
Exhibit a Homebrewed System
• Hardware or Software
• Prizes for Best "Homecooking"
(just like a country fair)
• Nominal Grants-ln-Aid Will Help
With Exhibit Transportation Costs
(grants will be refereed)
Present a Talk
• A Formal Paper
• An Informal Talk
Serve on a Panel
• As a Panel Member
• As the Coordinator/Moderator
Offer Suggestions
• Topics for Talks & Panels
• Speakers & Panel Participants
• Interesting Exhibits
(homebrewed or commercial)
• Special Activities
■ Quick, write or call for more details!
Jim Warren, Faire Chairperson
Box 1579
Palo Alto CA 94302
(415) 851-7664 v 323-3111
Some of the Conference Sections being planned:
• Computer Graphics on Home Computers
• Computer-Driven, & Computer-Assisted Music Systems
• Speech Synthesis Using Home Computers
• Computers & Amateur Radio
• Microprogrammable Microprocessors for Hobbyists
• Program & Data Input via Optical Scanning
• Floppy Disc Systems for Personal Computers
• Computer Games: Alphanumeric & Graphic
• Computers & Systems for Very Small Businesses
• Personal Computers for the Physically Handicapped
• Personal Word-Processing Systems
• Software Design: Modularity & Portability
• Personal Computers for Education
associated with a Univ. of California short-course
• Several Sections Concerning Standards
• Other Sections for Club Leaders, Editors, Organizers, etc.
Co-Sponsors include amateur, professional, & educational groups:
• The Two Largest, Amateur Computer Organizations
Homebrew Computer Club
Southern California Computer Society
• Both Area Chapters of the Association for Computing Machinery
San Francisco Peninsula Chapter & Golden Gate Chapter
• California Mathematics Council
• Stanford University's Electrical Engineering Department
• Community Computer Center
• People's Computer Company
francisco J
122 INTERFACE AGE
CIRCLE INQUIRY NO. 56
FEBRUARY 1977
I S.D. SALES CO.
P.O. BOX 28810 - E
DALLAS. TEXAS 75228
Z-80 CPU CARD KIT
FOR IMSAI/ALTAIR
$149:
From the same people who brought you the $89.95 4K RAM kit. We were not the first to
Introduce an IMSAI/ALTAIR compatible Z— 80 card, but we do feel that ours has the best
design and quality at the lowest price.
The advanced features of the Z— 80 such as an expanded set of 158 instructions, 8080A
software compatibility, and operation from a single 5VDC supply, are all well known. What
makes our card different is the extra care we took in the hardware design. The CPU card will
always stop on an Ml state. We also generate TRUE SYNC on card, to insure that the rest of
your system functions properly. Dynamic memory refresh and NMi are brought out for your
use. Believe It or not, not all of our competitors have gone to the extra trouble of doing this.
As always, this kit includes all parts, all sockets, and complete instructions for ease of assem-
bly. Because of our past experience with our 4K kit we suggest that you order early. All orders
will be shipped on a strict first come basis. Dealers Inquiries welcome on this item.
Kit shipped with 2 MHZ crystals for existing 500NS memory. Easily modified for faster RAM chips when the prices
come down. Z_80 Manual - $7.50 Separately,
Kit includes Zilog Manual and all parts.
JUMBO
LED
CAR
CLOCK
$16.95
KIT
kit.
DC
You requested it! Our first DC operated clock
Professionally engineered from scratch to be a
operated clock. Not a makeshift kluge as sold by others.
Features: Bowmar 4 digit .5 inch LED array, Mostek
50252 super clock chip, on board precision time base,
1 2 or 24 hour real time format, perfect for cars, boats,
vans, etc. Kit contains PC Board and all other parts
needed (except case). 50,000 satisfied clock kit cus-
tomers cannot be wrong!
FOR ALARM OPTION ADD $1.50
FOR XFMR FOR AC OPERATION ADD $1.50
60 HZ CRYSTAL TIME BASE FOR DIGITAL CLOCKS
S.D. SALES EXCLUSIVE!
KIT FEATURES:
A. 60HZ output with accuracy comparable to a digital watch.
B. Directly interfaces with all MOS Clock Chips. ^
C. Super low power consumption. (1 .5 ma typ.) $5.95 Or
D. Uses latest MOS 1 7 stage divider IC. 2/$ 10.
E. Eliminates forever the problem of AC line glitches.
F. Perfect for cars, boats, campers, or even for portable clocks
at ham field days.
G. Small Size, can be used in existing enclosures.
KIT INCLUDES CRYSTAL, DIVIDER IC, PC BOARD
PLUS ALL OTHER NECESSARY PARTS & SPECS
50HZ CRYSTAL TIME BASE KIT - $6.95
All the features of our 60HZ kit but has 50HZ output. For use
with clock chips like the 50252 that require 50HZ to give 24
hour time format.
1
THIS MONTH'S SPEC I A LS!
300.00 KHZ CRYSTAL - $1.50
8080 A - CPU CHIP by AMD - $19.95
82S129 - 256 x 4 PROM - $2.50
N.S. 8865 OCTAL DARLINGTON DRIVERS
3 for $1 .00
Z-80 - CPU by Zl LOG - $69.95
MM5204 - 4K EPROM - $7.95
Prices in effect this month ONL Y!
Q
4K LOW POWER RAM BOARD KIT
THE WHOLE WORKS - $89.95
Imsai and Altair 8080 plug in compatible. Uses low power
static 21 L02-1 500ns. RAM's, which are included. Fully buffer-
ed, drastically reduced power consumption, on board regulated,
all sockets and parts included. Premium quality plated thru
PC Board.
740O-19C 7411— 29c
74LS0O-49C 7413— 50c
7402— 19c 7416— 69c
74LS02— 49c 7420— 19c
7404— 19c 7430— 19c
74L04— 29c 7432— 34c
74S04— 44c 7437— 39c
74LS04-49C 7438— 39c
7406— 29c 7440— 19c
7408— 19c 7447— 85c
7410— 19c 7448— 85c
7451— 19c
7453— 19c
7473— 39c
7474— 35c
74LS74-59C
7475— 69c
7476— 35c
748 0— 49c
7483— 95c
7485— 95c
7486— 45c
TTL INTEGRATED CIRCUITS
7490— 65c 74153— 75c
74LS90— 95c 74154-1.00
7492— 75c 74157— 75c
7493— 69c 74161— 95c
7495— 75c 74164-1.10
7496— 89c 74165-1.10
74121-38C 74174— 95c
74123-65C 74181-2.50
74132-1.70 74191-1.25
74S138-1.95 74192-1.25
74141-75C 74193-1.00
74195— 69c
STICK IT! Huge Special Purchase
in your clock Not Factory Seconds
in your DVM, etc.! As sold by others!
4 JUMBO .50" ^^^^^^^^^^^^^^^^^
(with colons and
AM/PM Indicator) BUY 3 for $10.
BOWMAR 4 DIGIT LED READOUT ARRAY
The Bowmar Opto-Stick. The best readout bargain we have ever
offered. Has four common cathode jumbo digits with all seg-
ments and cathodes brought out. Increased versatility since any
of the digits may be used independently to fit your applications.
Perfect for any clock chip, especially direct drive units like
50380 or 7010. Also use in freq. counters, DVM's, etc. For 12
or 24 hour format.
UP YOUR COMPUTER!
21 L02-1 1 K LOW POWER 500 NS STATIC RAM
TIME IS OF THE ESSENCE!
And so is power. Not only are our RAM'S faster than a speeding
bullet but they are now very low power. We are pleased to offer
prime new 21 L02— 1 low power and super fast RAM's. Allows
you to STRETCH your power supply farther and at the same
time keep the wait light off. 8 for $12.95
$12 95 S.D. SALES EXCLUSIVE! <fc1?QR
^ MOS 6 DIGIT UP-DOWN COUNTER *♦* l£'30
40 PIN DIP. Everything you ever wanted in a counter chip.
Features: Direct LED segment drive, single power supply (12
VDC TYP.), six decades up/down, pre-loadable counter, sep-
arate pre-loadable compare register with compare output,
BCD AND seven segment outputs, internal scan oscillator,
CMOS compatible, leading zero blanking. 1MH2. count Input
frequency. Very limited qty. WITH DATA SHEET
WESTERN DIGITAL UART
No. TR1602B. 40 pin DIP
This Is a very powerful and
popular part.
NEW-$6.95 with data
LIMITED QUANTITY
SLIDE SWITCH
ASSORTMENT
Our best seller, includes
miniature and standard
sizes, single and multl-
Fif^ position units. All new,
first quality, name
brand. Try one package
and you'll reorder
more. SPECIAL 12/$1.
RESISTOR
ASSORTMENT
X W 5% and 10%
\ PC leads. A good mix
of values. 200/$2.
MOTOROLA POWER
DARLINGTON
Back in Stock!
Like MJ3001. NPN 80V. 1 OA.
HFE 6000 TYP. TO-3 case.
We Include a free 723C volt
reg. with schematic for power
supply. SPECIAL— $1.99
1702A 2K ERASEABLE
PROM'S -$6.95
We tell It like It is. We could
have said these were factory
new, but here Is the straight
scoop. We bought a load of
new computer gear that con-
tained a quantity of 1702 A's
In sockets. We carefully re-
moved the parts, verified their
quality, and are offering them
on one heck of a deal. First
come, first served. Satisfaction
guaranteed! U.V. Eraseable.
$£.95 each 4 for $25
CALL YOUR BANK
AMERICARD OR MASTER
CHARGE ORDER IN ON
OUR CONTINENTAL
UNITED STATES TOLL
FREE WATTS:
1-800-527-3460
Texas Residents Call Collect
214/271-0022
TERMS:
Money Back Guarantee. No
COD. Texas Residents add 5%
tax. Add 5% of order for
postage and handling. Orders
under $10. add 75c. Foreign
orders: US Funds ONLY!
S.D. SALES CO.
P.O. BOX 28810 E
Dallas, Texas 75228
FEBRUARY 1977
For orders over $15. 00 Choose $1. 00 FREE mdse..
CIRCLE INQUIRY NO. 61 INTERFACE AGE 123
Letters
to the
Editor
-
Dear Editor:
I am a professional programmer and
have been vaguely aware of the exis-
tence of the personal computer for
about a year. Last week, while shop-
ping, I passed by a computer store and
stopped in to satisfy my curiosity. After
looking at the system and reading
some magazines, I left in a state of
amazement and joy after discovering
all of the hardware and software avail-
able to the home computerist. I'm very
happy about finding a hobby that I can
really "get into." For my first project, I
would like to convert a B & W TV set
into a video monitor. If any of the
INTERFACE readers have any sugges-
tions as to how to accomplish this task,
I would be grateful to hear from them.
Brian O'Connell
Dear Editor:
I am writing this letter to inform the
readers that the MITS-BASIC Software
package will not run with the Z80 pro-
cessor.
The problem has to do with the use
of the parity flag. MITS seems to use it
extensively.
I was wondering if any of your
readers had some sort of a solution for
this problem.
Joe T. Huffman
No sooner said than done — See the
article A Z80 MITS 12K Extended
BASIC Patches, by Martin D. Gray in
this issue of INTERFACE AGE. This ar-
ticle provides required software
patches to the MITS Extended BASIC
for execution by the Z80 CPU.
Software Editor
Dear Editor:
... I am an inmate in the Washing-
ton State Penitentiary . . . Several of us
here are trying to utilize our time by
studying computers.
NAME WITHHELD
Dear Editor:
Thanks for publishing Dr. Wang's
Palo Alto Tiny Basic in a more read-
able form than that which appeared in
Dr. Dobb's Journal.
There is a glitch in the change sign
routine which gives the "HOW" error
message whenever a zero value or
expression is preceded by a minus sign.
For example: LET A = 0; Let B = -A
will not work.
To fix this change the CHGSGH rou-
tine at 0486 by adding three instruc-
tions:
CHGSGN:
MOV A,H
added f ORA L
instructions < RZ ^zero valu€
l^MOV A,H
PUSH PSW
Arthur I. Larky PH. D
Dear Editor:
I have just started to read INTER-
FACE magazine and find it very diffi-
cult to put down. I really enjoy reading
the articles that discuss the new ver-
sions of Star Trek that are becoming
available and all the other articles that
discuss various programs (Basic-diet-
plan) and others. I am really amazed
how you can just list the proper bits of
information and just start plugging
them right into the old computer
banks. I am also glad that you put all
your games and other lists in 8K Basic.
I am going to be purchasing a IMSAI
8080 or an ALTAI R 8800b in the near
future and through your magazine
alone I will be able to start developing
a library immediately.
There is a new topic I would really
like to see discussed and that is the
possibility and availability of voice
recognition boards and apparatus for
microprocessor like the IMSAI 8080
and the ALTAI R 8800b. I would really
be fascinated and I would feel that in-
vestment into the microprocessors
would be a good idea cause I could
eventually expand it into a unit using
voice recognition equipment as a peri-
pheral.
Also is there a good book around
that will teach me how to understand
and use 4K BASIC all the way through
extended BASIC (12K)? I would like a
book that presents this information
clearly and simply. I am looking for-
ward to hearing from you very soon. I
really hope to see an article about
voice recognition and all its hardware
come up soon. I just sent my subscrip-
tion in to your magazine today so I
won't miss any of the other exciting
things you already put in your maga-
zine. Thank you for your time.
Douglas Call
Dear Editor:
In that I am a beginner in compu-
ters and working with a small budget. I
would like to see more how-to articles
in your magazine. I cannot afford a lan-
guage system right now, and since I'm
starting from scratch with only a com-
munications background, I am writing
very simple iterations in machine lan-
guage. I'm building an octal terminal
for a little more speed in my program-
ming. Your magazine seems to have a
particular wealth of advertizements
and a dearth of instruction and theory.
Articles of some length on such things
as instruction sets, and basic routines
would be very welcome.
I am a technician in the Navy, and
somewhat handicapped by a lack of
literature overseas and the great cost
of technical publications. I know that
there are quite a few of us in the same
situation. It is very difficult to learn
microcomputers this way. I will be very
happy to write you some articles when
I learn something!
John Fitzpatrick
Dear Editor:
An article I would like to see in
INTERFACE AGE would be about the
use of hobbyist type equipment to
solve some of the basic 'real world'
problems of operating a robot in a
house or shop type environment.
Problems such as fail safe design, tele-
metery, navigation, and hazard avoid-
ance.
Paul F. Grayson
MICRO-MARKET AD RATE:
$25.00 per column inch. Max. 4
column inches per ad. Submit ads
to Micro-Market Ads — INTERFACE
Magazine, P.O. Box 1 234, Cerritos,
CA 90701.
Personal Computing '77
Consumer Trade Fair
2nd Fantastic Year
ATLANTIC CITY, N.J. AUG. 27 & 28
Thousands acclaimed u last year, thousands mor
are expected to attend this year
■ Seminars and Technical Talks by Leading Electronic
Equipment manufacturers
* Major Exhibits from ell parts of the Nation
■ Door Prizes. Free Literature and Free Mementos
• All this Plus Sun and Surf — Fun and Excitement in
the New Gambling and Show Place of tha East
FOR MORE INFORMATION CALL
JOHN DILKS
TRADEFAIR DIRECTOR
(609) 927-3873
SPECIAL GROUP RATES FOR CLU8S AND
ORGANIZATIONS TRAVELING FROM THE WEST
COAST AND MID. AMERICA
SevenSeas Travel Dawn Coingan
17220 S Norwalk Blvd 1213) 924-8383
Ccrrnos CA 90701
124 INTERFACE AGE
FEBRUARY 1977
MICRO-MARKET
TELETYPES $800
Model 33 ASR • Newly refurbished
RS232 • full/half duplex
30 day warranty
THE MULL COMPANY
920 Laurel Avenue
MenloPark.CA 94025
(415) 327-7509
COUTW FLORIDA
Authorized Dealer:
IMSAI, Southwest, Cromemco, CSC, Vector and others
Books, Magazines, Newspapers, Service and Supplies
University Shopping Center
1238A South Dixie Highway
Coral Gables, Fla. 33146
(305)661-6042
IF YOU MEAN
BUSINESS
USE YOUR MICRO-SYSTEM
AS INTELLIGENT TERMINAL
AT 110/308/1200 BAUD
ON-LINE OR REMOTE JOBS
FREE PROGRAM LIBRARY
EASY DATA-ENTRY FOR
SALES ORDERS, INVOICING,
INVENT . ,ACCTG. , PAYROLL
QUIKDATA TIMESHARING
3431 Cerritos,Los Alami-
tos 90720;213/596-4491
Texas Instruments
CALCULATOR PARTS:
• Printers (5050)
• Displays (SR-50-56)
• Card Readers (SR-52)
• Repair Manuals (SR-50-56)
• Keyboards (most)
• Cases (most)
SEND ONE DOLLAR
FOR PARTS LIST TO:
BOOTSTRAP ENTERPRISES
PO BOX 614
Richardson, Texas 75080
ADD COLOR TO EXISTING TV GAMES
WITH A CHROMA-PLEX 7700
DIGITAL CHROMA MULTIPLEXER KIT!
EASILY ADAPTED TO MOST BLACK and WHITE GAMES, (i.e., General
Instrument 6-gatne chip #AY-3-8S00.) CMOS M0S FET CIRCUITRY. LOW
POWER REQUIREMENTS: 7.0 V reg. £ 25na. 3-5 6" x 4" double-sided
plated board. DOZENS OF COLOR COMBINATIONS POSSIBLE. VERY
VERSATILE. EASILY ASSEMBLED IN ONE EVENING. S3S.D0 P.P.
ORDER BY PHONE or MAIL. DIAL 402 987-3771.
DAKOTA CITY. NE. 68731
ELIMINATE INTERFERENCE!
Compact power line filter keeps line in-
terference out of your system. Bonus! Keep
your system noise from interfering with
neighborhood TV, FM and AM receivers. Wire
directly into Teletype, Computer, Terminal or
Power Supply. Complete installation instruc-
tions. & Only $8.95 Postpaid.
Electronic Specialists, Inc.
171 So. Main, Natick, Mass. 01760
(617) 655-1532
AMCO HA9 APPLE!
APPLE COMPUTERS
AMCO ELECTRONIC SUPPLY
635 E. ARROW HIGHWAY
AZUSA. CA 91702
Phone: (213) 332-2216
SERIES
33TTY
FOR SALE OR RENT
■ EXCLUSIVE VAROON STYLING M
REDUCESOPERATINQ NOlSE
50% OR MORE
:::;.r 940°° 40% J ■
KSR (
875" 40^ MB
650°° 30^. / jp
GET COMPLETE DETAILS WITH A DIRECT CALL:
(214)252-7502 • TWX91 0880-5781 • TELEX 73-0022
vordon & associates. Inc.
930 N. Beltllne Road ■ Irvlno, Texas 75061
A tuetidiuyof Plon**> Tt.it Corporation
THE COMPUTER CORNER
"Brains are our Business "
ts IMSAI 8080. POLY-88. Processor Tech
^ Books. Magazines. TTY Supplies, Brain Games
Hours: 10-8 pm daily & 9et.; Thure. 10-9 pm
White Plains Mall, 200 Hamilton Ave.
WHITE PLAINS. NY 10601
Telephone: (914) 94 90 ATA
USED FABRI-TEK 688 CORE MEMORY
SYSTEMS — $249.95
SPEED — 1.2 jzsec. cycle time — .5^/sec. access.
CAPACITY— 32K words x 20 bits. POWER
SUPPLIES REQUIRED— ±15 and + 5volt.
SIZE— 2"x1 5"x22". Single board design.
Documentation included. Makes a great 64Kx8
8080 or 6800 Memory. TTL Compatible
Interface.
Send order to: USED MEMORY MART
5437 W. Tierra Buena Ln.
Glendale, Arizona 85306
************
* HELP WANTED *
* We're looking for a good person*
* to be in-store systems analyst. *
Jf • ALTAIR owner preferred *
3f * Interested in people 3f
£ • Digital Logic and/or programming ♦
^ • College degree desired *
We Offer
• Top technical challenge
• Liberal Salary and challenge
• Technological Leadership
• Friendly enviroment
Computer Store
820 Broadway
* Santa Monica, CA 90401
* (213) 451-0713
****************
COMPUTER HOBBYISTS!
Nationwide Classified
Advertising Newsletter
Buy & Sell Hardware & Software
new/used/unique/low-cost
$3.75 for 18 issues.
Free sample issue on request.
ON_LINE Newsletter
24695 Santa Cruz Hwy, Lot Gatos, Ca. 95030
n i i
I
I
ii n
Computer Mart of New York Inc.
314 Fifth Ave. ★ New York, N.Y. 10001
Microcomputers. Books. Components, Parts
Authorized (Dealer — Service— Friendly Advice
Open 10-6 PM Mon-Sat S1ANVEIT.
10-9 30 PM Thurs Eve Storekeeper
Telephone (212) 279-1048
LONG ISLAND
IMSAI Dealer
COMPUTER MICROSYSTEMS
Kits • Paits • Service • Books • Magazines
1309 Northern Blvd., Manhasset, N.Y. 11030
Telephone (516) 627-3640
End your video display problems
quickly with a "PIXE'VERTER"
A transistorized modulated oscillator which instantly converts a TV
receiver into a top notch video monitor. Connects directly to antenna
terminals. No wiring modifications required to the set. Operates on
channels 2-6- Power requirements 5*6 voits E 3 ma. Ideally suited for
computers, electronic games. TV cameras, vfdeo recorders, etc. Size:
1 .25" x 2. 1". Kit model *PXV-2A S8.50. Order by phone or snail.
ATV ftw.-w/t:l, I3-I BROADWAY
DAKOTA CITY. NEBR. 68131
* 1702A PROM PROGRAMMING SERVICE *
EPROM copy-$1 Hex form input- $3 Prime
1702A-S9. Software available including:
Program loaders, Memory checkers, Video
drivers and Code convenors.
We offer: Fast turnaround, free coding forms,
quantity discount. Write for free catalogue.
MICROTRONICS
P.O. Box 7454F Menlo Park, CA 94025
A.D.M.
Communications, Inc.
Teletype & Communications
Equipment
Buy— Sell— Recondition
1322 Industrial Ave.
Escondido, CA 92025
(714) 747-0374 Telex. 695097
FEBRUARY 1977
INTERFACE AGE 125
FLEA
MARKET
POWERTEC POWER SUPPLIES. New in
sealed cartons. Three outputs 1 @ 5V-6A
and 2 @ ± 12-1 .5A. Short and over voltage
protected. Open, black aluminum frame.
Perfect for /*P and TTL work. $29.95. B.
Adams, P.O. Box 146, Bryn Mawr, CA
92318.
IMSAI I-8080 kit — never assembled. Has
22 slot mother board. $490. PI04-1,
$10;PIOMs, $16.50; SI02-2. $119: RAM
4A-4, $105. Send SASE for info. First
checks will take the gear. Include shipping
costs; excess will be refunded, or arrange
local pickup. S.R. Lewis, 1477 Barrington,
#17. L.A. CA 90025.
SELL YOUR PRODUCTS IN FRANCE.
American with a new French company
wishes to represent U.S. products which
have not as yet been exploited in Europe.
If you feel your products are exportable -
write to me with full details P. Studner,
SUPER SEARCH. 39 Avenue de Breteuil,
Paris 75007, France.
FOR SALE: Altair 8800, working, hardly
used, ICs in sockets, flat-cable to front-
panel, $440 or offer. BYTE Shop TV type-
writer, new, working, $110 or offer. Den-
nis Feucht, 2015 S.E. 51st Ave., Portland,
OR 97215. (503) 233-2648 or (503)
644-0161 ext. 6255.
FOR SALE: Two new unused MFE250B
digital cassette drives - call best offer; Also
have Remex papertape spooler $25 plus
shipping; assembled morrow cassette
board $100; Bug book III $10; Processor
Tech 5KBASIC manuals and tape $10.
Gary Alevy, 48D Clintwood Ct., Rochester,
N.Y. 14620; (7 1 6)244-1 1 33.
FOR SALE: Processor Technology 4K
Static RAM assembled, works perfectly,
meets all specs, with all documentation
$150.00. Free unused papertape of 5K
Basic with documentation included with
RAM board. Barry Gerber, 720 Morse Ave.,
Placentia, CA 92670.
WANTED: SwTpc 6800 and TVT and KIM-
1 . Give details. Joe. 51 625 Chestnut Road,
Granger IN 46530.
HFO FLEA MARKET ADS
★ PERSONALS FREE *
Max. 1 0 lines per ad. Submit Ads to:
FIFO Ads— INTERFACE AGE Maga-
zine, P.O. Box 1234, Cerritos, CA
90701.
FOR SALE: ALTAIR 8800a. 16 slot m/brd,
fan;2-4k dyn, 2-4k static, (16k total
memory); ACR I/O; 3P + S I/O; TVT II w/64
chars/line; SCM Telewriter; software.
$2150. Will Separate. Evenings -
(312) 328-5610.
FOR SALE: 'Model 15 Page Printer' -
Baudot teletype suitable OSI, MITS 680b
computers. Excellent working condition,
with current source and box of paper. Also,
Friden 'Auxiliary Punch' — Baudot paper
tape punch. Could be modified to ASCII
with additional parts, not supplied.
Probably works, not guaranteed; with stand
and motorized tape takeup spool. Make
offers for either to: G. A. R. Trollope, 433
Cherry Lane. Lewiston N. Y. 14092;
(716)754-7222.
-WANTED: MITS ALTAIR disc (88-
DCDD) with disc basic. Need not be in
working condition, but must be complete.
State age. condition, version basic, price
and other particulars. Dana G. Peterson,
2129 Harper Street. Lawrence. KS 66044;
(913) 841-2817.
FOR SALE: IBM 2311 compatible disc
drive made by Marshall plus disc pack,
$425. Teletype ASR 33 with auto-answer
modem, auto-dial, stand. Three MITS 4K
Dynamic boards, operating. Signetics 3000
Microprocessor Designer's Kit. Make offer.
Lenny Heath, Bob Turnage, 86 Village
Green, Greenville, N.C. 27834; (919)752-
7813.
FOR SALE: ALTAIR 8800A completely
assembled. Includes 1 8-slot motherboard.
$550.00. K. Sisseon, 544 Wilkins, Apt.
1006, Detroit, Ml 48201.
FOR SALE: ALTAIR 680b — assembled
and running. Best offer over $300.00. Alan
Dahlbom, 1 6 Forest Street, Cambridge, MA
02140.
FOR SALE: IMSAI, brand new, assembled
and fully operational, with 22 card mother-
board and 1 1 connectors. $850.00. Also
memory boards. Sou Nam Kim, 10190
Vicksburg Drive, Cupertino, CA 95014.
(408)996-0537...after 7.00 pm.
Now Available for Immediate Delivery
Remanufactured Teletypes
Model M-33 ASR or KSR
Like New Condition
90 Day Warrantee
Prices $840.00 ASR
(Paper tape punch and tape reader)
$725.00 ksr
Accoustic Couplers and
RS-232 inter face available
Prices F.O.B. Howell N.J.
For Information Contact
B&N COMMUNICATIONS
R.D. 4 Box 272
Howell, N.J. 07731
201-780-1880
CIRCLE INQUIRY NO. 55
126 INTERFACE AGE
FEBRUARY 1977
FOR SALE: Service Manual for Selectric
I/O Writer. $28. R. Tierney, 4944 Cass St.
#811, San Diego. CA 92109.
HELLO PARTY: I am interested in ex-
changing ideas/info. etc. relating to
telephone applications for mini/micro com-
puters, such as PABXs', Key Systems, etc.
Call Norm. ..(21 3)653-3300.
FOR SALE: SPHERE 340 System 20K
RAM, 1 K system monitor, Full SIM board,
Line printer w/tractor feed, Dual floppy,
CRT, 4K EPROM board. 16K Mem. board
less Mem. chips, and more. Lot's of
software. $6,500. Wayne Smith, 227 S.
State, Salt Lake City. UT 84111;
(801)363-4941.
FOR SALE: 4K RAM boards for IMSAI or
ALTAIR. High speed, low power (Music).
Assembled and tested. $200.00 each. Dr.
Michael Stimson, 1530 Grand Teton Ct„
Chula Vista. CA. 9201 1.
MEMORY FOR SALE: GE Core Memory
16K by 40 Bits, all power and interface cir-
cuitry and documentation — been used
with an 8080 CPU. Litton Industries Drum
memory with full read/write electronics.
Bryant MBM drum memory. By unit or best
offer over $250.00 for lot. C. H. Eby, 7101
Mammoth Ave.. Van Nuys, CA 91405;
(213)988-1763.
FOR SALE: Poly-88 computer, new, never
used. Assembled and tested, with the video
tested by the factory. Includes 64 character
line option and serial port. Power for expan-
sion. Asking price $850.00. J. J. Goss,
5055 S.E. Roethe Road, Milwaukie, OR,
97222; (503)659-6601.
WANTED: Centronics (101, 102) Diablo,
Datapoint (2200, 1100), or H.W., or H.P.,
equivalent. NCR, Entrex, Univac, tubes,
printers, disk, diskette drives. Wango, Wang,
Kennedy, Ampex, Pertec PEC tape drives, in
any condition, working units, scrap frames or
spare parts. Software Datapoint or H.W.,
H.P., equivalent. Pat Snyder, Box 31,
Franklin Square, NY 11010.
FOR SALE: NEW Olivetti P-101 mini-
computer. Easily programmed, permanent
storage of programs on low cost magnetic
cards, hard copy printout. Current list price
$1 ,695. Will sacrifice for $995.00. Free
delivery. Marc Seligman, 320 Bryn Mawr
Ave., Bala Cynwyd, PA 19004.
HELP!! Where (besides GA) can I obtain a
copy (p. tape/disk) of General Automation
CAP 16 Assembler? Also need other data,
programs, etc. Call Norm...(21 3)653-3300.
HP-45 CRYSTALS: I have some crystals to
make the timebase in an HP-45 accurate so it
can be used as a 10 event stopwatch. I am
willing to sell these for $13 and will include
some instructions on how to install it. Mark S.
Egbert, 1514 S. 320 E. Orem, UT 84057.
(801)224-2102.
PDP-8 MINI COMPUTER (Straight-8) for
sale or trade. Mounted in attractive walnut
cabinet (wife approved for den). Complete
with maintenance manual, drawings,
4K Basic, 4K Focal, Editor, PAL III assembler,
Disassembler, TTY interface, games, etc.,
etc. Perfect condition. Free DECUS member-
ship available for additional software.
Presently in use with ASR Model 33 tele-
type. Can be sold with or without teletype.
Sale price w/o teletype $800.00. Rex Eagle,
P.O. Box 10498, Charlotte, N.C. 28288. (704)
374-6557.
FOR SALE: Two MITS 4K static memory
boards. Fully essembled and 100%
operational. I am switching to 16K static
boards. $160 each. David Milhouse, 2823
Griffa Ave., Columbus, IN 47201.
WANT SYSTEM, have R/C Gold Mine worth
over $3300 to TRADE. Helicopters, planes,
radios, cars, engines, field boxes and more.
Interested in ALTAIR 8800B or IMSAI 8080
System in trade (will accept cash). If you're
ready to move outdoors with your hobby
please call A.B. Clark, (305)238-3408 nights,
or (305)873-2528 days. Miami, FL.
SELECTRIC: OneDuraMach 10 wide platten
Selectric based terminal with dual paper tape
punches and readers. Computer interface
available. IBM serviced and adjusted typer.
Reconditioned and tested. Contact Ron
Jenkins, 4490 Sirius Ave., Lompoc, CA.
(805)733-2575 evenings except Mon. and
Wed.
Customer Service IS Our Business!!
VENTURY FWY
1/EMl.KA Eil VP
at People's Computer Shop
1 3452 VENTURA BLVD., SHERMAN OAKS, CA.
= Systems Galore!!
4 MILLION BYTES MEMORY!!
DIGITAL GROUP Z-80 SYTEM
743 KSP
SEALED BID FOR 1st & 2nd
ISSUES OF "BYTE." 30 AVAIL.
CLOSES MARCH 10th, 1977
PEOPLE'S APPLICATION SYSTEMS:
Financial Anaylysis Packages
Management Science Packages
Accounting Packages
Scientific Programs
Medical Management System Available soon
Market Tested!!
SPHERE 300
BARGAIN CORNER:
TELETYPE
SC-MP KIT
$295
$ 90
HOUR9:
12-9:30 PM TUE-FRI
10-6:00 PM SATURDAYS
12-5:00 PM SUNDAYS
ALL CHARGE CARDS HONORED
FEBRUARY 1977
CIRCLE INQUIRY NO. 51
INTERFACE AGE 127
ADVERTISING INDEX
Information
Inquiry
Number Page
MANUFACTURERS
1 Apple Computer Co 43
2 Associated Electronics 16
3 Comptek 14
4 Computer Electronics 51
5 Continental Specialties 46
6 Cromemco 1
7 Digital Group 3
8 E & L Instruments ?8
9 Electronic Control Technology 38
* HAL Communications 80
IMSAl cm
10 Intelligent Systems 32.32A
1 1 Matrix 8
12 Microcomputer Associates 61
13 Microterm 62
14 Miniterm 44
15 MITS 15
16 MPI 14
17 National Multiplex 19
18 Osborne Associates 20
19 Ohio Scientific Instruments 16
20 OK Machine & Tool 52
21 OmniSystems 18
22 Parasitic Engineering 61,63
23 Peripheral Vision 39
24 Persci 53
25 Prime Radix 11
26 Processor Technology 9, 49
27 Quay 78,79
28 Sharp & Associates 22
29 SWTP Cll
30 SOROC 59
31 Sphere 7
32 Technical Design Labs 27
33 Ultrabyte CIV
34 Vector Electronics 80
35 Vector Graphics 35
36 Wave Mate 5
37 Xybek 18
* Advertiser requests direct contact.
Information
Inquiry
Number Page
COMPUTER RETAILERS
38 Bits & Bytes, Fullerton 66
39 Bits & Bytes, Phoenix 118
40 Bits, Bytes & Pieces 113
41 Byte, Inc 87
42 Byte, Pasadena, CA 81
43 Byte, Tempe, AZ 83
44 Byte, LI, NY 84
45 Computer Components 76
46 Computer Enterprises 108
47 Computer Store, Santa Monica 67
48 Computer Mart of NY 66
49 Computerists 90
50 Disc 3 82
51 People's Computer Shop , 127
52 Sunshine Computer 85
53 Scientific Research Institute 57
SURPLUS STORES
54 Atwood Enterprises 103
55 B & M Communications 126
56 Computer Faire
57 Data IV 97
58 Digikey 102
59 Integrated Circuits 109
60 Quest 84
61 S. D.Sales 123
62 Semi-Comp 117
CAST YOUR VOTE
The authors in this issue would like to know your feelings as to which article
you consider the best. You may cast your vote on each article or only one,
which ever you prefer. The articles are graded on point scale 1 (lowest) to 10
(highest). At the end of the voting period all votes will be tallied and the highest
scoring article will be announced and the author will receive $100 bonus.
NOTE: Use Original "Voting and Reader Service Card" only. Any other form is not acceptable.
READER SERVICE VOTING NUMBER
ARTICLE lowest highest
8080 Octal Monitor Program 151 — 160
By Thomas Doyle
Legion: An Experiment in Artificial Intelligence 161 — 170
By Marlin Ellers
MicrocomputerStock Options 171 — 180
By Edward Christianson
Warp Factors 181 — 190
By Tom Mazur
Building A 12-Bit AID Converter 191 — 200
By Roger Brown
Computer Coupling To Teletype Loops 201 — 210
ByB. D. Lichtenwalner
The Black Box 211 — 220
By Ken Pugh
Need A Better Random Number 221 — 230
By Robert Martin
Basic Algorithms For Common Math Functions 231 — 240
By Michael Burton
NEXT MONTH ANNOUNCEMENT OF DECEMBER'S BEST AUTHOR WINNER.
128 INTERFACE AGE
FEBRUARY 1977
READER SERVICE CARD
%
>
I
c
'w
a>
a
<
CD
C
o
-C
Q_
CD
E
o
x
□
CO
a.
E
o
O
g.
N
o
O
CO
O a!
> CT> O) CD OJ 0> O
jntDCORllOCD
'-'-'-CVJCMCVJCMCOCOCO
cviinaj'-^NOrjd
COCOCOCOCOCOCDCCCI
CM lf> CD *- «
. _ OJ CM m (D
'-CMCMCVJCMCOCOCO
iflioininminmm
'-'-'-CMC
3 CO S S CM S 3
J CM CM CM CO CO CO
T— T— T— C\J c
CMCMCMCMCMCMCMC
'-'-'- cm c
o o o o o o
o o
O CO
CM CM
o o o o o
id oi cm m m
CVI CM CO CO CO
CD CT> C7> O) CD
inco'-f n
CM CM CO CO CO
'-TNOP3CD(3)CMinoO'-'f
*- CM
§> CM 5? CO ™ 5 S
CM CM CM CO CO CO
soncoc
3 CO CO
r r*- o
co to
CO co
3 CO CO CO CO CD
3 O CM Ifl CO
- t- CM CM CM CO
5 in in in m in
3 03 CM m CO »"~
- ^— CM CM CM CO
SSwino*
- »— CM CM CM CO
CO CO CO CO CO
CM CM CM CM C
. oncooiwmcO'-
t- — ^-i— CMCMCMCO
'—- ncocncMinoD'-'Th
CO '-'- -CMCMC
E
o
c
"D
c
CD
3 CO CO
3 *- tr
- CM CM
3 to m
D *-
- CM CM
" ^ 5 '
co to o> c
CO CO CO CO c
co to o> CM in CD 7-
CM CM CM CM
CO CO 03
CM CM
CO CO
CM CM
CM CVJ
—
CM CM
i 1
CO CO
<S r°
co co
T T
CO CO
CO CO
CO CO
CM CM
-'-'-'-CMCMCMCOCOCO
ooooooooooooo
'-VN.OCOlDCBCMincO'-tS
t— t— t— T-CMCMCMCOCOCO
O)O>O>O)O>O>O>O>O>0)O>O>O>
ncocncMincD'-WNOnco
»- •»— — CMCMCMCOCOCO
^nSfflCMScoS^KOOCD
*- *- CMCMCMCOCOCO
□I
= s
S cn £ *j
to co co to
sonco
CM CO CO CO
CM CO CO CO
*T *T T «f
N. O CO ID
CM CO CO CO
CO CO CO CO
SOP) to
CM CO CO CO
. . _ CM CM CM CM
CMinCD-TNOniD
CM CO CO CO
(Please type or print)
Name -
iiuicnrflLG
February 1977 Issue - Void after April 30, 1977
VOTING CARD
Title-
Company
Address _
Phone (A/Q_
□ Home
City .
State_
Please send information on items circled below.
. Country.
□ Business
.Zip_
3 4
33 34
63 64
93 94
95 96
7 8
37 38
67 68
97 98
127 126
9 10 11
39 40 41
69 70 71
99 100 101
m 130 131
12 13
42 43
72 73
102 103
132 133
14 15
44 45
74 75
104 105
16 17 18
46 47 48
76 77 78
106 107 108
136 137 138
19 20 21
49 50 51
79 80 81
109 110 111
139 140 14 T
151 15? 153 154 155 !56 157 156 159 16G
161 162 163 164 165 166 167 1 68 169 1 70
M: ^2 173 174 175 m 177 176 T7& ISO
I?- '!•':? 1*3 'Si '35 ' 7 '87 '2* •?■•> 150
191 192 193 194 195 196 1&7 V96 199 200
20 T 2Q2 203 204 205 206 207 206 209 210
2" 2": 2i:
214 Z-15 216 217 2iB 219 220
221 222 223 224 225 226 227 228 229 230
231 232 233 234 235 236 237 238 239 240
a:
?44 ?J5 2h5 2-3 7 i!43 249 2 5 3
25' 252 252 254 2fr. 22.6 257 255 : • ct
2£. 252 2 52 2*4 2 -7 2-7 /' ' .7:1 269 270
r
27. J " " r-,
26 "i 2B2 283 584 265 286 287 2B8 2B9 290
2- 7'" : .^7 .7- .
30 1 302 303 304 305 27 ii 7 s:i 2'JB 3!0
211 y.? 312.314 315 316 317 318 3 '.9 320
321 32? 322 224 32E 325 7' 22: :29 7.
331 332 333 334 335 336 337 338 339 340
341 14 S 344 2-35 3«6 2-17 m 349 350
351 252 351 354 355 355 357 358 359 350
351 362 363 VA i65 276 3-57 366 m-j 370
371 372 372 374 275 176 377 2 73 379 330
381 382 383 554 385 386 387 388 389 390
22 23
52 53
82 83
112 113
I4j t43
24 25
54 55
84 85
114 115
26 27
56 57
86 87
116 117
US 147
28 29 30
58 59 60
88 89 90
118 119 120
141 iifl 1SQ
My primiry interests are in Q Hardware Q Software.
I am b [] HGbbyiti Professional Engrntar Businessman.
iruTcnraLi
February 1977 Issue - Void after April 30, 1977
(Please type or print)
Name ,
Title-
Company
Address _
Phone (A/C)_
City -
State.
_ □ Home □ Business
Country Zip
Please send information on items circled below.
s
O
U-E
O"-
<?
o|
_i o
< h-
O
u
X
■D
eo
c
m
O
O
o
N
<0
lS
(— z
ft UJ
o <
CQ
3
a
o
o
<
O
CD
9
s
cc
LU
O
CO
CVJ
LU
LU
LL
o
s §
■° ri
CO CL
Cl.
o:
O
CO
CO W
O
O
o
a?
o
9
E
c
CO
a.
E
o
a
"D
<
CD
E
o
x
Q.
o
a
0)
00
C
O)
CO
O Q
1 2
31 32
61 62
91 92
121 122
151 152
181 182
211 212
241 242
271 272
301 302
331 332
361 362
3 4
33 34
63 64
93 94
123 124
153 154
183 184
213 214
243 244
273 274
303 304
333 334
363 364
5 6 7
35 36 37
65 66 67
95 96 97
125 126 127
155 156 157
185 186 187
215 216 217
245 246 247
275 276 277
305 306 307
335 336 337
365 366 367
38 39
68 69
98 99
128 129
158 159
188 189
218 219
248 249
278 279
308 309
338 339
368 369
10 11
40 41
70 71
100 101
130 131
160 161
190 191
220 221
250 251
280 281
310 311
340 341
370 371
12 13 14
42 43 44
72 73 74
102 103 104
132 133 134
162 163 164
192 193 194
222 223 224
252 253 254
282 283 284
312 313 314
342 343 344
372 373 374
15 16
45 46
75 76
105 106
135 136
165 166
195 196
225 226
255 256
285 286
315 316
345 346
375 376
17 18
47 48
77 78
107 108
137 138
167 168
197 198
227 228
257 258
287 288
317 318
347 348
377 378
19 20 21
49 50 51
79 80 81
109 110 111
139 140 141
169 170 171
199 200 201
229 230 231
259 260 261
289 290 291
319 320 321
349 350 351
379 380 381
22 23
52 53
82 83
112 113
142 143
172 173
202 203
232 233
262 263
292 293
322 323
352 353
382 383
24 25
54 55
84 85
114 115
144 145
174 175
204 205
234 235
264 265
294 295
324 325
354 355
384 385
26 27
56 57
86 87
116 117
146 147
176 177
206 207
236 237
266 267
296 297
326 327
356 357
386 387
28 29 30
58 59 60
88 89 90
118 119 120
148 149 150
178 179 180
208 209 210
238 239240
268 269 270
298 299 300
328 329 330
358 359 360
388 389 390
My primary interests are in Hardware Software.
I am • | | Hobvyist O Professional Engineer Q Businessman.
SUBSCRIPTION APPLICATION FORM
PAYMENT MUST ACCOMPANY FORM
SUBSCRIPTION FEE per year: $10.00 U.S., $12.00 Canada/Mexico
$ 1 8.00 Foreign. i m iwr-i siar -
Make check payable to: II \J I CHfifiJLG Magazine
P.O. Box 1 234, Cerritos, CA 90701
Name_
Title
Company
Home Address
C<ly
. State_
. Country,
_ Zip_
Date_
. Signature
FIRST CLASS
PERMIT No. 18
Cermos.Ca 90701
BUSINESS REPLY MAIL
NO POSTAGE STAMP NECESSARY IF MAILED IN THE UNITED STATES
Interface Hotline
P.O. Box 1234
Cerritos, Ca. 90701
first class
PERMIT No. 18
Cemtos. Ca 90701
O _
2 : b %
o u
y cd o
n o (D
io ro 2.
o co -
O CD
o
i m
o
SO)
to
>
^ m
>
n
m
5
PERM
Tl
i
o
n
r
i»
yi
3
s
BUSINESS REPLY MAIL
NO POSTAGE STAMP NECESSARY IF MAILED IN THE UNITED STATES
Interface Hotline
P.O. Box 1234
Cerritos, Ca. 90701
PLANNING TO MOVE?
Let us know 8 weeks in advance so that you won't miss a
single issue of INTERFACE.
Attach old label where indicated and print new address in
space provided. Also includeyourmailing label whenever you
write concerning your subscription. It helps us serve you
promptly.
If you have no label handy, print OLD address here.
Name
E E
I* 3
C a? *r>
— £ S
* E o
O 3 Q
Is
■a ti -a
c 3 g
uS
D 3
coo
j w ^
_ < cn
flj A c
ta « £
- ^ «
log
a
-i
Q
2
2
a
o
^ X o —
« a - i
3 a c o
< m £ a
i
LJJ
1
6
O
a "1—1 o
S|— S 8
2 — « CL O
Company
Address
City Siaie
Affix Label Print NEW address here
Zip code
Company
Address
Zip code
MAIL COMPLETED CARD TO:
ir\i7cnr«LG
P.O. Box 1234
Cerritos, California 90701
Experience
the excitement of owning the world's
finest personal computer -
IMSAI 8080
w
Th
en
Waiting for you — all the incredible
performance and power of the
IMSAI 8080. And at a price you
would normally pay for a fine
home music system.
Introduced less than two years
ago, the IMSAI 8080 is sold world-
wide and acknowledged as the
finest personal computer available.
WORLD OF USES
The IMSAI 8080 is a superbly
engineered, quality computer. It is
ersatile, expandable and power-
kputting literally hundreds of
applications and uses at your
fingertips. Imagine sitting at your
desk and enjoying interaction with
your IMSAI 8080! Press the on
switch and you're ready for game
playing, research, education, busi-
ness applications, or for laboratory
instrument control. It has all the
power you need, and more, to
make your application ideas come
alive.
GROWS WITH YOU
The IMSAI 8080 is designed for
many years of pleasure. With its
open -chassis engineering you can
expand your system by adding
peripherals and interfaces. The 22-
slots and 28 amp power supply
mean that you can plug-in today's,
plus tomorrows modules.
Right now you can add a module
for displaying color graphics and
characters on TV; a ready-to-use
keyboard; small and large printers,
and a single interface that lets
you attach multiple devices includ-
ing a cassette tape recorder. Ex-
pect the latest, exciting equipment
from IMSAI. We are committed
to leadership in this expanding
technology.
EASY TO PROGRAM
With our BASIC language you
can operate the IMSAI 8080
quickly and easily. Technically
knowledgeable? Use our assembly
language to develop sophisticated
and unique software.
If you're thinking personal computer,
treat yourself to the very best —
IMSf I 8080
Send for free four-color brochure
or $1 for catalog. CaLpr write for
name of nearest deal
IMSAI
IMSAI Manufacturing Corporation
14860 Wicks Blvd.
San Leandro. CA 94577 Vi!**WB
(415)483-2093
TWX 910-366 7287
European Distributor
Harper industry Products, Ltd.
6079 Sprendlingen 2
West Germany
ULTRA BYTE
PRESENTS
+ Z-80
CPU BOARD
= IMSAI Z-80
THAT'S RIGHT! THIS ULTRA-POWERFUL COMBINATION IS OFFERED BY ULTRABYTE,
YOUR FACTORY AUTHORIZED DEALER OF ALL THESE QUALITY COMPONENTS
PLEASE RUSH ME THE FOLLOWING:
□ * IMSAI Z-80 Standard Kit, (without Standard CPU
Board) with Powerful TDL ZPU Board . . . $ 820.00
□ "Same as above (IMSAI plus Z-80). but \
Mother Board $
□ IMSAI 8080 Kit. Star ... .$
□ IMSAI 8080 Kit. with . , . $
□ Card Guides, 20 pairs , $
□ IMSAI 4K Bytes Static Memor . , . . , $
□ IMSAI Multiple I/O Board. Kit $
□ TDL 4K Expandable Memory, H
(IMSAI/ULTAIR Compatible* . . .$
TDL 8K Expandable Memory . . .$
TDL 1 6K Memory $
TDL 4K Expansion Kh , . . .. . .$
TDL ZPU Card (gives
to TDL Software) . $
□ SEALS 8K Board
500 ns Maximum , $
225 ns Maximum
□ ICOM's Microfloppy Disk System, Including Drive.
Power Supply. Cabinet. Controller/Interface
Card, Manuals. Diskette & Software .....
□ ICOM's Frugal Floppy, including Disk Drive,
CF 360 Controller, all Cables and Connectors . .
□ ICOM's Frugal Floppy, same as above, but with
Dual Disk Drive ,
SUB TOTAL
PRICES SUBJECT TO CHANGE W ITHOUT NOTICE
$
.$
880.00
599.00
660.00
20.00
129.00
180.00
159.00
279.00
549.00
135.00
259.00
255.00
280.00
$1
$1
895.00
129.00
749.00
*PHONE IN YOUR CREDIT CARD ORDERS
*CALIF. RES. ADD 6% SALES TAX
*MOST ORDERS SHIPPED WITHIN 30 DAYS
♦SHIPPING CHARGE: COLLECT F.O.B. FACTORY
Enclosed Check or Money Order
For i
Bankamericard No.,
Mastercharge No. _
Interbank No.
Signature:
Name:
Address:
City, State, Zip:
UltraByte Incorporated
P.O. Box 370, Westminster, CA. 92683
(714) 892-4679
Executive Offices:
Park Plaza Building, Suite 8
17281 Plaza Street, Westminister, CA. 92683
(Send Self -addressed, stamped envelope for complete
computer accessory list )
ARTWORK COURTESY OF GO FOR IT GRAPHICS , BOX 532, MANHATTAN BEACH, CA 90266
CIRCLE INQUIRY NO. 33